2013-09-10 3 views
0

Предположим, что существует таблица с 2-мя колоннами и следующие данные:условие Выбор запроса для db2

ID : 1,2,3,4,5,6,7,8 
DATA:a,a,a,a,a,a,a,b 

Там может быть только одна строка 1 с данными = B, и несколько строк с данными = а.

Мне нужен запрос, который выберет только одну строку. Если есть строка с DATA = b, мы выберем ее, и если нет строки с DATA = b, она выберет первую строку с DATA = a ,

Пожалуйста, помогите !!!!

+0

теперь вы спросили 7 вопросов, не пришло время наградить тех, кто придумал полезный ответ, принимая их ответы –

ответ

1
SELECT * 
FROM table 
WHERE DATA in ('A', 'B') 
ORDER BY CASE WHEN DATA= 'B' THEN 0 ELSE 1 END, ID 
FETCH FIRST 1 ROWS ONLY 
+1

Вы абсолютно игнорируя любую другую возможность для 'DATA' другого тогда«а»или" б '! –

+0

@LS_dev больше не –

+0

Ya ... его работа..отправляет !!!!!!!! – saptarshi

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