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

Откуда:
Сообщений: 2
Таблица с тремя полями: первые два числовые, одинаковой разрядности; третье поле, является флагом и содержит 1 либо 0.
Нужно выбрать значения из первых двух полей таким образом: если третье поле содержит 1 - выбирается значение из первого поля; если третье поле содержит 0 - выбирается значение из второго поля.
Подскажите, как написать такой запрос без использования UNION?
15 окт 05, 13:05    [1972424]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
Taffy
Member

Откуда:
Сообщений: 20501
select case when a3 = 1 
                then a2
                else a1
                end as res
from mytable
15 окт 05, 13:12    [1972432]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
ddzhan
Member

Откуда:
Сообщений: 2
Taffy
select case when a3 = 1 
                then a2
                else a1
                end as res
from mytable


Спасибо, за ответ.
Только еще один вопрос, данная конструкция CASE, она описывается в каком-нить стандарте (sql-99 !?)или это расширение MSSQL? у меня пока под рукой только книга с sql-92, скоро исправлю...
15 окт 05, 13:20    [1972439]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
ChA
Member

Откуда: Москва
Сообщений: 11124
ddzhan
Только еще один вопрос, данная конструкция CASE, она описывается в каком-нить стандарте (sql-99 !?)
Есть, в 99, ранее - не знаю.
15 окт 05, 14:39    [1972524]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
ChA
ddzhan
Только еще один вопрос, данная конструкция CASE, она описывается в каком-нить стандарте (sql-99 !?)
Есть, в 99, ранее - не знаю.
В 92 тоже есть.
17 окт 05, 06:44    [1973706]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить