Вниз
Скачать: CL | DM;

Проблема использования SUM() в запросе.   Найти похожие ветки 

← →
Leshiy ©   (2005-09-22 15:12) [0]

Есть запрос:
select W.Description,W.Price+sum(M.Price) from Works W
left join Materials M on M.Work_id=W.id
where W.AktVr_id=1
group by M.Work_id,W.Description

Таблицы: Works (Работы) и Materials (Материалы, связана с таблицей Works полем Work_id)

Нужно для каждой работы посчитать ее стоимость и стоимость всех материалов.
Все работает, но только если у "работы" есть "материалы", если же их нет - то получаем в стоимости null, хотя должны получить только стоимость "работы".
Почему это происходит - понятно, так как Sum в данном случае возвращает null.

Что нужно сделать чтобы в случае отсутствия "материалов", стоимость "работ" все-таки выводилась?


← →
Курдль ©   (2005-09-22 15:15) [1]

А парадокс поддерживает конструкцию типа:
select field1, field2, (select sum(field4) from table2) as field3 from table1
?


← →
Sergey13 ©   (2005-09-22 15:26) [2]

select W.Description,W.Price,sum(M.Price) from Works W
left join Materials M on M.Work_id=W.id
where W.AktVr_id=1
group by M.Work_id,W.Description,W.Price

Так не пойдет? Сложишь на клиенте.


← →
Leshiy ©   (2005-09-22 15:29) [3]

Sergey13 ©   (22.09.05 15:26) [2]
Сложишь на клиенте.

Пока так и делаю.


← →
Курдль ©   (2005-09-22 15:31) [4]

А IsNull(M.Price, 0) не может помочь?


← →
Leshiy ©   (2005-09-22 15:38) [5]

Курдль ©   (22.09.05 15:31) [4]
А IsNull(M.Price, 0) не может помочь?

Похоже local sql это не поддерживает.


← →
Курдль ©   (2005-09-22 15:44) [6]

Тогда забей на парадокс и делай на Yaffil-е!


← →
Leshiy ©   (2005-09-22 15:47) [7]

Курдль ©   (22.09.05 15:44) [6]

Тогда забей на парадокс и делай на Yaffil-е!


Поздно :)
Вопрос поднял из интереса.
Сама проблема решена см. [2],[3].



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.033 c
14-1129567066
ArtemESC
2005-10-17 20:37
2005.11.06
Эффективный алгоритм


6-1121457872
redlord
2005-07-16 00:04
2005.11.06
все компы в сети


14-1129646450
Fin
2005-10-18 18:40
2005.11.06
Опять про миранду.


3-1127889170
Scorpio
2005-09-28 10:32
2005.11.06
Помогите организовать поиск по базе


4-1125493815
MegaVolt
2005-08-31 17:10
2005.11.06
Кому предназначено сообщение?




   Наверх