Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2012.01.08;
Скачать: CL | DM;

Вниз

MySQL запрос   Найти похожие ветки 

 
mefodiy   (2010-03-26 15:56) [0]

Есть такого запрос, который упрощенно выглядит так:

SELECT a.Exp_code,b.Amount1,c.Amount2,b.Amount1 + c.Amount2
FROM Table1 a
LEFT JOIN (SELECT Exp_code,SUM(Field1) AS Amount1 FROM Table2 GROUP BY Exp_code) b USING(Exp_code)
LEFT JOIN (SELECT Exp_code,SUM(Field2) AS Amount2 FROM Table3 GROUP BY Exp_code) c USING(Exp_code)
ORDER BY Exp_code

В нем все нормально срабатывает кроме суммы
b.Amount1 + c.Amount2.
Во всех строках выводится Null, хотя слогаемые не равны нулю.
Что делаю неправильно и как сделать?


 
evvcom ©   (2010-03-26 17:59) [1]

не знаю функцию в MySQL, а в Оракле она такая:
nvl(b.Amount1, 0) + nvl(c.Amount2, 0)

В MSSQL, если правильно помню:
ISNULL(b.Amount1, 0) + ISNULL(c.Amount2, 0)

Ищи аналогичную в MySQL


 
mefodiy   (2010-03-26 20:53) [2]

Спасибо за подсказку.
Сделал так

IF(b.Amount1 IS NULL,0,b.Amount1) + IF(c.Amount2 IS NULL,0,c.Amount2)

и сработало.



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

Текущий архив: 2012.01.08;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.01 c
15-1316692399
Очень Злой
2011-09-22 15:53
2012.01.08
помогите найти заразу


15-1315398270
Empleado
2011-09-07 16:24
2012.01.08
Конец OLE DB


15-1316169795
Dimka Maslov
2011-09-16 14:43
2012.01.08
Пятничная задачка


1-1275582894
alpp
2010-06-03 20:34
2012.01.08
слияние 2-х файлов word в один


2-1317392685
Сергей
2011-09-30 18:24
2012.01.08
Как выполнить репликацию Access c помощью Delphi?