Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Выборка и суммирование данных из хапроса
|
|||
|---|---|---|---|
|
#18+
Добрый день! Я задавла свой вопрос на форуме SQL, но ответа нет, может, он больше к программированию на Delphi относится. Подскажите, пжл, как реализовать в Delphi алгоритм обработки: задача по учету топлива в баках, из запроса на 3-х таблицах, выбирающего данные по заданному периоду (d1, d2) надо сложить все остатки по всем бакам за каждую дату. SELECT d.DataVvod, d.BakEmkost, d.NumBakEmkost,SUM(OstDay) as S FROM (SELECT a.DataVvod,a.BakEmkost,a.NumBakEmkost,a.Uroven, a.Temperatura, a.UdVes,a.Vlashnost,a.MOstatok,a.Uroven, Vmestim as V1, (V1-MOstatok) as V,Popravka as P1, (V*(UdVes-P1)*(100-Vlashnost)/100) as OstDay, (MOstatok*(UdVes-P1)*(100-Vlashnost)/100) as MOst FROM VvodBakEmk a, UrVmest b, TemPopravka c WHERE a.BakEmkost=b.BakEmkost AND a.NumBakEmkost=b.NumBakEmkost AND a.Uroven=b.Uroven AND a.Temperatura=c.Temperatura AND DataVvod BETWEEN :d1 AND :d2 GROUP BY DataVvod,BakEmkost) as d ORDER BY 1,2,3 У меня не работает ни SUM, ни GROUP. Пробовала сделать временную таблицу из базового запроса: SELECT a.DataVvod,a.BakEmkost.... INTO #t1 FROM ... Тоже ошибки в select Задача под Delphi5, БД mdb на Access2000 Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 14:10 |
|
||
|
Выборка и суммирование данных из хапроса
|
|||
|---|---|---|---|
|
#18+
Попробуй так: SELECT d.DataVvod, d.BakEmkost, d.NumBakEmkost , SUM(OstDay) as S ... GROUP BY d.DataVvod, d.BakEmkost, d.NumBakEmkost Т.е. все поля, которые перед SUM должны быть в GROUP BY ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 14:30 |
|
||
|
Выборка и суммирование данных из хапроса
|
|||
|---|---|---|---|
|
#18+
Спасибо за отклик! У меня работает запрос, т.е. св-во Active переводиться в true SELECT d.DataVvod, d.BakEmkost, d.NumBakEmkost,OstDay,OstDay as S FROM (SELECT a.DataVvod,a.BakEmkost,a.NumBakEmkost,a.Uroven, a.Temperatura, a.UdVes,a.Vlashnost,a.MOstatok,a.Uroven, Vmestim as V1, (V1-MOstatok) as V,Popravka as P1, (V*(UdVes-P1)*(100-Vlashnost)/100) as OstDay, (MOstatok*(UdVes-P1)*(100-Vlashnost)/100) as MOst FROM VvodBakEmk a, UrVmest b, TemPopravka c WHERE a.BakEmkost=b.BakEmkost AND a.NumBakEmkost=b.NumBakEmkost AND a.Uroven=b.Uroven AND a.Temperatura=c.Temperatura AND DataVvod BETWEEN :d1 AND :d2) as d Если я ставлю SELECT ...,SUM(OstDay) as S то сообщение об ошибке "ODBC MS Access. попытка выполнить запрос, к-рый не включает указанное выражение DataVvod как часть статист-ой ф-ии или группы" Если пытаюсь сделать GROUP BY (SUM убираю), то опять ошибка ODBC. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 15:27 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=32241836&tid=2117249]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
163ms |
get topic data: |
13ms |
get forum data: |
4ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
| others: | 250ms |
| total: | 513ms |

| 0 / 0 |
