Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Как можно общее объединить с частным  [new]
Adilby
Member

Откуда:
Сообщений: 23
Есть такая таблица:
Объект - НачальДата - КонечДата - Процент
Общий - 01.01.2021 - 01.12.2021 - 5%
Частный1 - 01.04.2021 - 01.05.2021 - 8%

Мне надо получить в запросе для Частный1:
Частный1 - 01.01.2021 - 5%
Частный1 - 01.02.2021 - 5%
Частный1 - 01.03.2021 - 5%
Частный1 - 01.04.2021 - 8%
Частный1 - 01.05.2021 - 8%
Частный1 - 01.06.2021 - 5%
Частный1 - 01.07.2021 - 5%
Частный1 - 01.08.2021 - 5%
Частный1 - 01.09.2021 - 5%
Частный1 - 01.10.2021 - 5%
Частный1 - 01.11.2021 - 5%
Частный1 - 01.12.2021 - 5%

для Частный2:
Частный2 - 01.01.2021 - 5%
Частный2 - 01.02.2021 - 5%
Частный2 - 01.03.2021 - 5%
Частный2 - 01.04.2021 - 5%
Частный2 - 01.05.2021 - 5%
Частный2 - 01.06.2021 - 5%
Частный2 - 01.07.2021 - 5%
Частный2 - 01.08.2021 - 5%
Частный2 - 01.09.2021 - 5%
Частный2 - 01.10.2021 - 5%
Частный2 - 01.11.2021 - 5%
Частный2 - 01.12.2021 - 5%
2 май 21, 14:02    [22317452]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
Tarasios
Member

Откуда: Украина
Сообщений: 566
Adilby,
"Мне надо получить"
- так получай, кто же тебе не даёт
3 май 21, 20:20    [22317950]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 21194
Генерируешь таблицу-календарь, а потом LEFT JOIN и COALESCE.
3 май 21, 20:40    [22317956]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
court
Member

Откуда:
Сообщений: 2339
Adilby
Общий - 01.01.2021 - 01.12.2021 - 5%
имхую, хлопцу нужен DIGITS и DATEADD
3 май 21, 23:08    [22318007]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
Tarasios
Member

Откуда: Украина
Сообщений: 566
court,
хлопцу нужно?
ну как бы хлопец ни у кого ничего не просил и даже не спрашивал, не? Или это случай, когда верные холопы должны на лету угадывать и воплощать чаяния барина? ;)
4 май 21, 20:00    [22318473]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 7350
Adilby
Есть такая таблица:
Объект - НачальДата - КонечДата - Процент
Общий - 01.01.2021 - 01.12.2021 - 5%
Частный1 - 01.04.2021 - 01.05.2021 - 8%
Мне надо получить в запросе для Частный1:
Частный1 - 01.01.2021 - 5%
Частный1 - 01.02.2021 - 5%
Частный1 - 01.03.2021 - 5%
Частный1 - 01.04.2021 - 8%
Частный1 - 01.05.2021 - 8%
Частный1 - 01.06.2021 - 5%
Частный1 - 01.07.2021 - 5%
Частный1 - 01.08.2021 - 5%
Частный1 - 01.09.2021 - 5%
Частный1 - 01.10.2021 - 5%
Частный1 - 01.11.2021 - 5%
Частный1 - 01.12.2021 - 5%

Стесняюсь спросить:а с какого перепугу 8% 01.05.21 а не 01.09.21(между начальной и конечной датой 12 месяцев). Откуда "железяка" может "знать" на какой месяц
Может просто создать справочник объектов и "главную" таблицу занося в неё данные за месяц (или ежедневные-как Вам надо) Нужно минимум 2 таблицы со ВСЕМИ данными для получения нужной Вам информации. Или я чего-то не знаю/не понимаю
4 май 21, 22:08    [22318522]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
vmag
Member

Откуда: MP
Сообщений: 4029
sdku
Стесняюсь спросить:а с какого перепугу 8% 01.05.21 а не 01.09.21(между начальной и конечной датой 12 месяцев).

у нормального пацана в примере январь с 1 по 12 число...
4 май 21, 22:36    [22318541]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
vmag
Member

Откуда: MP
Сообщений: 4029
ему наверно проще цикл сделать от даты до даты и писать в промежуточную таблицу результат
4 май 21, 22:40    [22318542]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
Adilby
Member

Откуда:
Сообщений: 23
Забыл написать, есть еще другая таблица с записями например:
Частный1 - 01.01.2021 - 1000
Частный1 - 01.02.2021 - 1000
Частный1 - 01.03.2021 - 1000
Частный1 - 01.04.2021 - 1000
Частный1 - 01.05.2021 - 1000
Частный1 - 01.06.2021 - 1000
Частный1 - 01.07.2021 - 1000
Частный1 - 01.08.2021 - 1000
Частный1 - 01.09.2021 - 1000
Частный1 - 01.10.2021 - 1000
Частный1 - 01.11.2021 - 1000
Частный1 - 01.12.2021 - 1000
Частный2 - 01.01.2021 - 2000
Частный2 - 01.02.2021 - 2000
Частный2 - 01.03.2021 - 2000
Частный2 - 01.04.2021 - 2000
Частный2 - 01.05.2021 - 2000
Частный2 - 01.06.2021 - 2000
Частный2 - 01.07.2021 - 2000
Частный2 - 01.08.2021 - 2000
Частный2 - 01.09.2021 - 2000
Частный2 - 01.10.2021 - 2000
Частный2 - 01.11.2021 - 2000
Частный2 - 01.12.2021 - 2000

И мне надо объединить эти две таблицы и получить выборку для where Объект='Частный1 ':
Частный1 - 01.01.2021 - 1000*5%
Частный1 - 01.02.2021 - 1000*5%
Частный1 - 01.03.2021 - 1000*5%
Частный1 - 01.04.2021 - 1000*8%
Частный1 - 01.05.2021 - 1000*8%
Частный1 - 01.06.2021 - 1000*5%
Частный1 - 01.07.2021 - 1000*5%
Частный1 - 01.08.2021 - 1000*5%
Частный1 - 01.09.2021 - 1000*5%
Частный1 - 01.10.2021 - 1000*5%
Частный1 - 01.11.2021 - 1000*5%
Частный1 - 01.12.2021 - 1000*5%

и выборку для where Объект='Частный2 ':
Частный2 - 01.01.2021 - 2000*5%
Частный2 - 01.02.2021 - 2000*5%
Частный2 - 01.03.2021 - 2000*5%
Частный2 - 01.04.2021 - 2000*5%
Частный2 - 01.05.2021 - 2000*5%
Частный2 - 01.06.2021 - 2000*5%
Частный2 - 01.07.2021 - 2000*5%
Частный2 - 01.08.2021 - 2000*5%
Частный2 - 01.09.2021 - 2000*5%
Частный2 - 01.10.2021 - 2000*5%
Частный2 - 01.11.2021 - 2000*5%
Частный2 - 01.12.2021 - 2000*5%

Как можно такое получить?
5 май 21, 14:42    [22318800]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
court
Member

Откуда:
Сообщений: 2339
select
  a.*
  ,Nz(c.Процент, b.Процент) as Процент
from ([есть еще другая таблица с записями] a
inner join [Есть такая таблица:] b on a.Дата between b.НачальДата and b.КонечДата and b.Объект = 'Общий')
left join [Есть такая таблица:] c on a.Дата between c.НачальДата and c.КонечДата and c.Объект = a.Объект 


Сообщение было отредактировано: 6 май 21, 06:39
6 май 21, 06:41    [22319091]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
Лапух
Member

Откуда: Стойбище № 7
Сообщений: 1180
Tarasios
...- так получай, кто же тебе не даёт...

Вместо того, что бы цинично смеяться над бескультурными людьми, можно было бы для начала ткнуть носом в это безкультурие, ибо ты ни чем не лучше со своим словесным поносом ни о чем.
Если не нравится, то будь примером для подражания и покажи как надо.
9 май 21, 03:29    [22319805]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
Tarasios
Member

Откуда: Украина
Сообщений: 566
Лапух
Tarasios
...- так получай, кто же тебе не даёт...

Вместо того, что бы цинично смеяться над бескультурными людьми, можно было бы для начала ткнуть носом в это безкультурие, ибо ты ни чем не лучше со своим словесным поносом ни о чем.
Если не нравится, то будь примером для подражания и покажи как надо.

Вот кто бы уже за "словесный понос" молчал, так это ты
9 май 21, 05:32    [22319817]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
mds_world
Member

Откуда: Ташкент
Сообщений: 27574
Лапух, Tarasios!

Джентльмены, продолжение беседы в тоне "сам дурак" награждается баном.
9 май 21, 07:12    [22319821]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
Лапух
Member

Откуда: Стойбище № 7
Сообщений: 1180
mds_world
..."сам дурак" награждается баном...

А можно мне аж целых два или даже три?
Ибо я очень уж по жизни жадный до баллов и прочих каких то там - лайков.
А если без смеха, то чё - Tarasios просто ни о чем тему засоряет без реального ответа по существу и на это ему было прямо указано?
Так как он высказался, даже я или моя жена или аж кошка ответить на вопрос может.
Именно таким пустобрёхам в натуре и надо указадельным пальцем грозить, а не нам - Праведным праведникам, замечающим пустопорожнее балабольство ни о чём, ну разве что для добавления количества сообщений они это делають, поднимая свою никчЁмную репутацию.
9 май 21, 11:59    [22319852]     Ответить | Цитировать Сообщить модератору
 Re: Как можно общее объединить с частным  [new]
mds_world
Member

Откуда: Ташкент
Сообщений: 27574
Лапух
А можно мне аж целых два или даже три?

Если очень хочется, то можно. Лапух бан на 3 дня.
9 май 21, 12:28    [22319858]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить