Мне нужно написать запрос, который возвращает сумму всех значений, удовлетворяющих определенным критериям, но запрос должен возвращать 0, если не найдено ни одной строки, а не null. Например:
tab
+---------------+-----+
| descr | num |
+---------------+-----+
| hello there | 5 |
| hi there | 10 |
| hello | 10 |
| hi there! | 15 |
+---------------+-----+
Этот запрос:
SELECT sum(num) AS val FROM tab WHERE descr LIKE "%hello%";
должен и возвращает 15
. Однако:
SELECT sum(num) AS val FROM tab WHERE descr LIKE "%greetings%";
должен вернуть 0
, но возвращает null
.
Может кто-нибудь объяснить, возможно ли это?