Страница 1 из 1
сложение с null в хп
Добавлено: 26 июл 2006, 11:58
mdfv
Тупняк напал.
Как сложить число с null?
все переменные в процедуре numeric(18,2).
Код: Выделить всё
sum1=0;
for select summa from tablica
into :summa
do
begin
sum1=sum1+cast(summa as numeric(18,2));
suspend; /*summa*/
end
в итоге получается sum1 равно null, если одна из summa=null.
без IIF(summa is null,0,summa) тут можно обойтись?
Добавлено: 26 июл 2006, 12:30
dimitr
RTFM coalesce. Без функций тут обойтись не удастся.
хотя интересно, а чем "select sum(summa) from tablica" не угодил?
Добавлено: 26 июл 2006, 13:45
Merlin
dimitr писал(а):RTFM coalesce. Без функций тут обойтись не удастся.
хотя интересно, а чем "select sum(summa) from tablica" не угодил?
Да всё тем же. Это тоже FM, а к ним народ испытывает острую личную неприязнь.
Добавлено: 26 июл 2006, 14:10
mdfv
Спасибо. про коалу совсем забыл.
dimitr писал(а):хотя интересно, а чем "select sum(summa) from tablica" не угодил?
Это я для упрощения написал.
на самом деле тут execute statement into используется + инсерты и апдейты ,
текст описания полей и условий которого в цикле вытаскивается из другой справочной таблицы, и там может быть все что угодно.
Re: сложение с null в хп
Добавлено: 05 авг 2006, 16:19
Фанис
mdfv писал(а):Тупняк напал.
Как сложить число с null?
все переменные в процедуре numeric(18,2).
Код: Выделить всё
sum1=0;
for select summa from tablica
into :summa
do
begin
sum1=sum1+cast(summa as numeric(18,2));
suspend; /*summa*/
end
в итоге получается sum1 равно null, если одна из summa=null.
без IIF(summa is null,0,summa) тут можно обойтись?
for select summa from tablica where summa is not null
into :summa