Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Вычислить значение поля по условию  [new]
volkforlive
Member

Откуда:
Сообщений: 49
Добрый день!

Пытаюсь вычислить значение поля по условию: вывести поле(int), если оно не NULL, иначе
вывести сумму двух других полей.

Я делаю так:

SELECT param1 as Column1,param2 as Column2,..., CASE WHEN param3=NULL THEN (param4+param5) as MyColumn


Но в результате получаю ошибку Incorrect syntax near the keyword 'as' . Подскажите пожалуйста, как решить эту проблему.
Спасибо.
12 июл 13, 10:55    [14556200]     Ответить | Цитировать Сообщить модератору
 Re: Вычислить значение поля по условию  [new]
Igor Kv.
Member

Откуда:
Сообщений: 25
SELECT param1 as Column1,param2 as Column2,...,
(CASE WHEN param3 IS NULL THEN (param4+param5) end)as MyColumn
12 июл 13, 10:56    [14556216]     Ответить | Цитировать Сообщить модератору
 Re: Вычислить значение поля по условию  [new]
iap
Member

Откуда: Москва
Сообщений: 46999
ISNULL(param3,param4+param5)
12 июл 13, 10:58    [14556228]     Ответить | Цитировать Сообщить модератору
 Re: Вычислить значение поля по условию  [new]
Gosha
Member

Откуда: Odessa
Сообщений: 217
select coalesce(param3,param4+param5)
12 июл 13, 11:06    [14556289]     Ответить | Цитировать Сообщить модератору
 Re: Вычислить значение поля по условию  [new]
qazxsw123
Guest
volkforlive
Добрый день!

Пытаюсь вычислить значение поля по условию: вывести поле(int), если оно не NULL, иначе
вывести сумму двух других полей.

Я делаю так:

SELECT param1 as Column1,param2 as Column2,..., CASE WHEN param3=NULL THEN (param4+param5) as MyColumn


Но в результате получаю ошибку Incorrect syntax near the keyword 'as' . Подскажите пожалуйста, как решить эту проблему.
Спасибо.

SELECT param1 as Column1,param2 as Column2,..., CASE WHEN param3 IS NULL THEN (param4+param5)  END as MyColumn
12 июл 13, 11:39    [14556598]     Ответить | Цитировать Сообщить модератору
 Re: Вычислить значение поля по условию  [new]
volkforlive
Member

Откуда:
Сообщений: 49
Спасибо, помогло:)
12 июл 13, 11:47    [14556700]     Ответить | Цитировать Сообщить модератору
 Re: Вычислить значение поля по условию  [new]
iap
Member

Откуда: Москва
Сообщений: 46999
qazxsw123
volkforlive
Добрый день!

Пытаюсь вычислить значение поля по условию: вывести поле(int), если оно не NULL, иначе
вывести сумму двух других полей.

Я делаю так:

SELECT param1 as Column1,param2 as Column2,..., CASE WHEN param3=NULL THEN (param4+param5) as MyColumn



Но в результате получаю ошибку Incorrect syntax near the keyword 'as' . Подскажите пожалуйста, как решить эту проблему.
Спасибо.

SELECT param1 as Column1,param2 as Column2,..., CASE WHEN param3 IS NULL THEN (param4+param5)  END as MyColumn
Читаем внимательно:
volkforlive
вывести поле(int), если оно не NULL
Так что незачёт!
12 июл 13, 11:51    [14556751]     Ответить | Цитировать Сообщить модератору
 Re: Вычислить значение поля по условию  [new]
qazxsw123
Guest
iap
qazxsw123
пропущено...

SELECT param1 as Column1,param2 as Column2,..., CASE WHEN param3 IS NULL THEN (param4+param5)  END as MyColumn
Читаем внимательно:
volkforlive
вывести поле(int), если оно не NULL
Так что незачёт!


я, вообще-то указал на ошибку в синтаксисе
но если по честному, то

SELECT param1 as Column1,param2 as Column2,..., CASE WHEN param3 IS NULL THEN (param4+param5)   ELSE param3  END as MyColumn


PS с ISNULL и COALESCE конечно же проще, если там все так просто
12 июл 13, 12:25    [14557082]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить