2010-06-07 2 views
-1

Так что это не нормальный оператор условного выбора.Оператор условного выбора T-SQL

I ток есть столбец ID и столбец Number. Либо ID является 0 или Number 0.

Так что мой оператор выбора нужно сделать Выбрать Колы colB, colC, crazy part Из таблицы А.

crazy part это: (If ID > 0, ID, Number) основном выбрать и возвращает этот столбец, не 0. Есть ли способ сделать это в T-SQL?

ответ

11

Это следует сделать это:

select colA, colB, colC, case when ID is 0 then Number else ID end as Crazy 
from TableA 
+0

/facepalm Я пробовал все, кроме заявления о делах, спасибо! – msarchet

0

Вы бы сделать это, используя CASE заявление:

SELECT 
    colA, 
    colB, 
    colC, 
    CASE WHEN ID > 0 THEN ID ELSE Number END 
FROM 
    TableA 
3

CASE (как объясняют другие), безусловно, работает. Однако, если один из двух всегда равен 0, вы можете просто добавить их вместе.

Смежные вопросы