|
Сложный простой запрос
|
|||
---|---|---|---|
#18+
[quot __Michelle]Alex37, Так, отвлечься оказалось полезно. Новый взгляд возник. Правильно ли я понимаю, что задача состоит в том, чтобы получить три итоговые суммы, не заостряя внимание на причастных к ним Кодах? Тогда и запросов вспомогательных не надо. Все сразу получим одним коротким запросом [src] SELECT -Sum(Аванс*(Дата<Forms!фГлавная!ДатаПо)) AS [Sum-DАванс], -Sum(ДатаРеализации*(Дата<Forms!фГлавная!ДатаПо)) AS [Sum-DСумма]>, (SELECT Sum(СуммаДоплаты) FROM тУСН17доплата WHERE ДатаДоплаты<Forms!фГлавная!ДатаПо) AS [Sum-DСуммаДоплаты] FROM тУСН17 WHERE Дата<Forms!фГлавная!ДатаПо OR ДатаРеализации<Forms!фГлавная!ДатаПо На 28.02.2017 (в главной форме) выдало: Sum-DАванс Sum-DСумма Sum-DСуммаДоплаты54 000 85624 15 000 А должно было быть: 54000 0 15000 На 31.03.2017 также дает неправильное значение Sum-DСумма ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2017, 23:34 |
|
Сложный простой запрос
|
|||
---|---|---|---|
#18+
__Michelle, Да, забыл добавить, я поменял везде в условиях запроса <[Forms]![фГлавная]![ДатаПо] на <=[Forms]![фГлавная]![ДатаПо] ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2017, 23:37 |
|
Сложный простой запрос
|
|||
---|---|---|---|
#18+
Опять та же опечатка вкралась (издержки копирования и писания с планшета). Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2017, 23:40 |
|
Сложный простой запрос
|
|||
---|---|---|---|
#18+
Alex37, ошибочка была в union запросе-поправил. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2017, 23:49 |
|
Сложный простой запрос
|
|||
---|---|---|---|
#18+
aleckoAlex37, ошибочка была в union запросе-поправил. Проверил работу. Уже было по стенам побежал на радостях, но нашел небольшой баг. Если выставить дату в форме: 30.04.2017 то запрос пропускает(не видит) такие данные (они последние в списках доплат): Код=3 - пропущена доплата за 24.04.2017 200 рэ Код=88 - пропущена доплата за 24.04.2017 1000рэ ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2017, 00:08 |
|
Сложный простой запрос
|
|||
---|---|---|---|
#18+
__MichelleОпять та же опечатка вкралась (издержки копирования и писания с планшета). Код: sql 1. 2. 3. 4. 5.
Работает не совсем правильно. Значения Sum-DСумма очень большие. Предыдущий вариант точнее считал. Два других результата точные. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2017, 00:19 |
|
Сложный простой запрос
|
|||
---|---|---|---|
#18+
Ладно. Больше не шучу. Сделаю наконец хорошо. Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2017, 00:24 |
|
Сложный простой запрос
|
|||
---|---|---|---|
#18+
__Michelle, Последний вариант полностью прошел мои тесты. Всё работает! Спасибо. Завтра с утра буду тестировать на других, более внушительных, массивах данных. Огромное спасибо Вам за помощь! От всего сердца!!! Спасибо всем, кто принимал участие в решении этого вопроса! ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2017, 00:46 |
|
Сложный простой запрос
|
|||
---|---|---|---|
#18+
Alex37, мою тоже можете потестить - поправил. (в юнион забыл предикат All добавить). в качестве бонуса - ищем как до, так и после даты в первом поле (не одновременно). (регулируется изменением дат кнопочками)-в качестве даты, берем дату последнего платежа удовлетворяющего условию. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2017, 12:35 |
|
|
start [/forum/search_topic.php?author=NickMN&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
43ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 984ms |
total: | 1142ms |
0 / 0 |