![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Почему не складывает как люди!!! [D7, XP]
ViktorZ © (2006-04-13 18:07:00)Почему при выполнении запроса(
SELECT C.NAME,T.CARD,SUM(T.OST),SUM(T.SUMMA) ,' +
' SUM(T.OST)+ SUM(T.SUMMA), (SUM(T.SUMMA)*(:skidka20))/100 AS SKIDKA20, ' +
' (SUM(T.OST)*(:skidka10)/100) AS SKIDKA10,' +
' (SUM(T.OST)*(:skidka10)/100) + (SUM(T.SUMMA)*(:skidka20))/100 ' +
' FROM ":SEN:Total" T, ":SEN:Cards" C WHERE C.CARD=T.CARD Group by ' +
'C.NAME,T.CARD' +
' HAVING (SUM(T.OST) BETWEEN :sumsk1 AND :sumsk2 OR SUM(T.SUMMA)' +
'BETWEEN :sumost1 AND :sumost2) ORDER by CARD
)
не выдает сумму, скажем когда есть поля, T.Summa, T.OST, тогда все нормально, но когда нет одного из них то выдает ноль.
Скажем так:
SUM(T.SUMMA) SUM(T.OST) SUM(T.SUMMA)+SUM(T.OST)
0 123 0
0 222 0
100 125 225
0 200 0
Мне нужно чтоб складывал нормально.Как это сделать?
Заранее спасибо.
ViktorZ (2006-04-14 13:54:00) [1]Спасибо всем, правда я хотел копировать данные и одного столбца там где не ноль, а там где есть обе суммы складывать.
Sergey13 (2006-04-14 09:16:00) [2]2ViktorZ © (13.04.06 18:07)
Можно считать это ошибкой проектирования. 8-)
NULL в числовых полях, которые надо математически обрабатывать очень редко бывает оправдан. Пропиши у этих полей значени по умолчанию =0. Проапдейть NULL на 0, и забудь о проблеме.
ЮЮ (2006-04-14 08:15:00) [3]Перенеси это поле из запроса в сalculated поле DataSet-а
Anatoly Podgoretsky (2006-04-13 22:09:00) [4]ViktorZ © (13.04.06 19:23) [2]
0 и NULL разные, не сравнимые вещи
Desdechado (2006-04-13 20:58:00) [5]NULL - такая вещь, которая обрабатывается особо
всякие сравнения или арифметические операции с ним бессмысленны, ибо получишь NULL
Ega23 (2006-04-13 19:32:00) [6]Про парадокс ничего сказать не могу. Поищи что-то типа IsNull
ViktorZ (2006-04-13 19:32:00) [7]Скажи про то что знаешь.
ViktorZ (2006-04-13 19:30:00) [8]Парадокс...db
Ega23 (2006-04-13 19:27:00) [9]СУБД какая?
ViktorZ (2006-04-13 19:23:00) [10]Правильно подозреваешь, как мне этот Нуль сложить с числом и получить число ;-)
Ega23 (2006-04-13 18:12:00) [11]Подозреваю, что потому что NULL