Форум программистов, компьютерный форум, киберфорум
Наши страницы
PostgreSQL
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
EVOSandru6
3 / 3 / 6
Регистрация: 23.05.2012
Сообщений: 445
#1

Как вернуть в запросе значение по умолчанию, если SELECT возвращает NULL или ничего не возвращает?

25.08.2015, 11:48. Просмотров 1063. Ответов 2
Метки нет (Все метки)

Добрый день!

Например я хочу чтобы донное выражение возвращало мне 0 или скажем 1, если результатом выражения rating вернется NULL:

SQL
1
2
3
SELECT
                m_users.id,
                  ( SUM(mc_rating.name) / COUNT(mc_rating.name)) AS rating ...
Добавлено через 46 минут
пробовал так:

SQL
1
2
3
4
5
6
7
SUM(mc_rating.name) / COUNT(mc_rating.name) AS rating,
CASE
WHEN rating 
IS NOT NULL 
THEN rating
ELSE "0"
END
Ловлю:

SQL
1
2
ERROR: COLUMN "rating" does NOT exist
LINE 35: WHEN rating
и так:

SQL
1
NULLIF(0 , SUM(mc_rating.name) / COUNT(mc_rating.name) AS rating)
Ловлю:

SQL
1
2
ERROR: syntax error at OR near "as"
LINE 33: ..., (SUM(mc_rating.name) / COUNT(mc_rating.name)) AS rating)
В чем может быть проблема?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.08.2015, 11:48
Ответы с готовыми решениями:

Что возвращает MySQL если select ничего не находит
Вопрос возник при написании серверной части на яве, которая должна проверить...

Select возвращает null
Подскажите как избежать исключения если SELECT ни одной строки не вернул....

Select возвращает ничего
Есть таблица , в нем есть записи не знаю какой кодировкой ( я конвертировал...

GetSession(false) должен был вернуть null, а он возвращает сессию
Зравствуйте. Платформа java ee 6, сервер tomcat6. В сервлете прописано: ...

Рекордсет возвращает значение 'null'.
Рекордсет возвращает значение 'null'. Проверка типа if(...

2
grgdvo
705 / 611 / 209
Регистрация: 02.09.2012
Сообщений: 1,801
27.08.2015, 23:32 #2
Лучший ответ Сообщение было отмечено EVOSandru6 как решение

Решение

1. используйте функции coalesce.
2. ошибка в том, что as rating нужно вынести за скобку, вы же имя полю назначаете
1
EVOSandru6
3 / 3 / 6
Регистрация: 23.05.2012
Сообщений: 445
28.08.2015, 06:14  [ТС] #3
Выручило CASE END;
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.08.2015, 06:14

Стандартная функция fopen возвращает не NULL и не значение
Ребят тока начинаю писать на си юзаю fopen, но она возвращает 0xcccccc, т.е....

Как получить значение из метода класса, если метод возвращает указатель?
Всем привет. Как получить значение из метода класса, если метод возвращает...

Метод, который возвращает второй по величине за минимальным элементом или null
Здравствуйте. Помогите пожалуйста написать следующий метод: Метод, который...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru