Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > Аналог NZ() для query


Автор: zhuchok 26.1.2011, 11:56
Подстажите пожалуйста, как преобразовать следующий запрос 
Код

SELECT order_client.id_order, 
Sum(Nz(order_goods.amount*goods.cost)) AS Sum_goods, 
Sum(Nz(order_history.hours*stage_order.cost_in_hour)) AS Sum_History, 
Sum((1-order_client.disk)*((Nz(order_goods.amount)*Nz(goods.cost)+Nz(order_history.hours)*Nz(stage_order.cost_in_hour)))) AS Sum_order
FROM stage_order RIGHT JOIN ((order_client LEFT JOIN (goods RIGHT JOIN order_goods 
ON goods.id_goods=order_goods.id_goods) 
ON order_client.id_order=order_goods.id_order) LEFT JOIN order_history 
ON order_client.id_order=order_history.id_order) 
ON stage_order.id_stage=order_history.id_stage
GROUP BY order_client.id_order;


Чтобы его можно было записать в query.
На данный момент при попытке активации query вылетает ошибка "не потдерживается функция NZ()"
Пробовала использовать ISNULL следующим образом
Код

SELECT 
order_client.id_order,
Sum(ISNULL(order_goods.amount,0)* ISNULL(goods.cost,0)) AS Sum_goods,
Sum(ISNULL(order_history.hours,0)* ISNULL(stage_order.cost_in_hour,0)) AS Sum_History,
Sum((ISNULL(order_goods.amount,0)* ISNULL(goods.cost,0)+ ISNULL(order_history.hours,0)* ISNULL(stage_order.cost_in_hour,0))*(1- ISNULL(order_client.disk,0))) AS Sum_order
FROM stage_order RIGHT JOIN ((order_client LEFT JOIN (goods RIGHT JOIN order_goods 
ON goods.id_goods=order_goods.id_goods) 
ON order_client.id_order=order_goods.id_order) LEFT JOIN order_history 
ON order_client.id_order=order_history.id_order) 
ON stage_order.id_stage=order_history.id_stage
GROUP BY order_client.id_order;


Но в этом случае ошибка "недостаточно параметров в функции ISNULL()

Автор: Ymnuk 26.1.2011, 12:06
Какая СУБД? Версия?

Для DB2 в гугле 2-я ссылка.
http://forums.devshed.com/db2-development-114/nz-in-an-sql-statement-245048.html

Автор: Akella 27.1.2011, 13:31
zhuchok, а так пробовал?
http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=sql+NZ%28%29

Смотри как красиво smile
http://i16.fastpic.ru/big/2011/0127/93/7c294a01949aa4bbe464bb3159d8e993.png

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)