Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.02.01;
Скачать: CL | DM;

Вниз

Что может конструкция IIF ? ( MS SQL)   Найти похожие ветки 

 
Alex7   (2008-06-24 09:35) [0]

Доброго времени суток, уважаемые мастера!
Подскажите пожалуйста, необходимо реализовать выборку, текст запроса которай предполагаю выглядит так:
SELECT IIF(FIELD1=0, FIELD2, FIELD1) AS FIELD3 FROM ...
этот текст возбуждает ошибку некорректный синтаксис около FIELD1.
Поиск по сайту дал примеры конструкций, но только с условием "FIELD1 IS NULL", а нужна проверка на ноль.
Спасибо.


 
stas ©   (2008-06-24 09:59) [1]

FIELD3=CASE WHEN FIELD1=0 THEN  FIELD2 ELSE FIELD1 END


 
Alex7   (2008-06-24 10:25) [2]

Большое спасибо! Все работает.


 
ЮЮ ©   (2008-06-24 10:26) [3]

> FIELD3=CASE WHEN FIELD1=0 THEN  FIELD2 ELSE FIELD1 END

это к чему ?

SELECT CASE WHEN FIELD1=0 THEN  FIELD2 ELSE FIELD1 END AS FIELD3 FROM &#133
или
SELECT CASE FIELD1 WHEN 0 THEN FIELD2 ELSE FIELD1 END AS FIELD3 FROM &#133


 
stas ©   (2008-06-24 13:41) [4]

ЮЮ ©   (24.06.08 10:26) [3]
Какая разница? мне так удобнее, код получается понятнее (для меня)


 
Ega23 ©   (2008-06-24 13:43) [5]


> ЮЮ ©   (24.06.08 10:26) [3]




Examples
A. Use a SELECT statement with a simple CASE function
Within a SELECT statement, a simple CASE function allows only an equality check; no other comparisons are made. This example uses the CASE function to alter the display of book categories to make them more understandable.

USE pubs
GO
SELECT   Category =
     CASE type
        WHEN "popular_comp" THEN "Popular Computing"
        WHEN "mod_cook" THEN "Modern Cooking"
        WHEN "business" THEN "Business"
        WHEN "psychology" THEN "Psychology"
        WHEN "trad_cook" THEN "Traditional Cooking"
        ELSE "Not yet categorized"
     END,
  CAST(title AS varchar(25)) AS "Shortened Title",
  price AS Price
FROM titles
WHERE price IS NOT NULL
ORDER BY type, price
COMPUTE AVG(price) BY type
GO



В BOL и так и так пишуть. Я равно предпочитаю, а не as.



Страницы: 1 вся ветка

Текущий архив: 2009.02.01;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.014 c
15-1228477841
Артур Пирожков
2008-12-05 14:50
2009.02.01
Если нет Офиса, а нужно открыть Аксесовский файл?


15-1228708456
Mozart
2008-12-08 06:54
2009.02.01
Биллинг...


2-1229811012
kritika
2008-12-21 01:10
2009.02.01
очереди, стеки, деревья


9-1167021706
MonoLife
2006-12-25 07:41
2009.02.01
puzzle


15-1228848341
Керк
2008-12-09 21:45
2009.02.01
SSL и Apache