Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как проверить запрос на null [D7, MSSQL]


CRACKISH ©   (2004-08-13 05:15:00) 

Люди вот делаю запрос на подсчет суммы! Запрос может выдать и null! как мне это проверить? Спасибо!


Ega23   (2004-08-13 11:33:00) [1]

Пользуйся ISNULL-ом, и вообще, переноси это дело на сервер. Пусть Сервер напрягается, а не клиент.


Skyle   (2004-08-13 11:08:00) [2]


> select sum( COALESCE(numberofuse,0.00))

Забиваем гвозди любимым микроскопом? ;-)


Danilka   (2004-08-13 11:08:00) [3]

[9] User_Name   (13.08.04 11:05)
Нет, не так, если нет ни одной записи, твой запрос вернет null, надо вынести COALESCE после SUM, а вообще, это будет аналог [5].

<offtopic>
CRACKISH, смотри-ка как за год (или уже два прошло?) вырос от каилоков до МС-Скуля, маладец. :))
</offtopic>


User_Name   (2004-08-13 11:05:00) [4]

Можно использовать

select sum(COALESCE(numberofuse,0.00))

Думаю для подсчета суммы результат 0 вместо NULL подойдет и проверять не придется :)))

P.S. Все вышесказанное ИМХО


Danilka   (2004-08-13 10:58:00) [5]

[7] Skyle ©   (13.08.04 10:54)
Угу, но когда запрос на подсчет суммы, по моему мнению, в большинстве задач [5] подойдет, довольно редко когда при этом интересует есть-ли вообще записи или нет.


Skyle   (2004-08-13 10:54:00) [6]


>  [5] Nikky   (13.08.04 10:39)

Не согласен.
0 и NULL - разные вещи.


Nikky   (2004-08-13 10:40:00) [7]

сорри не } а )
:)


Nikky   (2004-08-13 10:39:00) [8]

проще select isNULL (sum (numberofuse}, 0) from blablabla


CRACKISH   (2004-08-13 08:54:00) [9]

Спасибо!


Skyle   (2004-08-13 08:53:00) [10]

Fields[0].IsNull?


CRACKISH   (2004-08-13 08:48:00) [11]

TQuery!
В таблицы базы данных MSSQL!
выполняю так:
select sum(numberofuse) from _Execudetables
where dateorder between '''+edit1.text+''' and '''+edit2.text+'''
Если за период numberofuse есть то считает все нормально! А если нет то запрос отсылает null, а как мне этот null и проверить?


Skyle   (2004-08-13 06:26:00) [12]

Чем выполняешь запрос?
Где нужно проверить и с какой целью?


Наверх

Титульная страница Поиск, карта сайта Написать письмо