Запрос выбора строки при использовании различных - PullRequest
0 голосов
/ 20 ноября 2019

Я хотел бы сделать следующее.

Допустим, данные выглядят примерно так

Number  letter  
1        b      
1        c      
1        a       
2        d       
2        b        
2        c
3        a
3        b
3        c 

Я хочу отфильтровать данные по следующему номеру столбца, чтобы получить всеотдельные числа, а затем также отфильтровать букву d

Вывод должен быть следующим:

Number letter 
1     
2 
2       d
3

Возможно ли это?

Я могу сделать это в двух таблицах, ноя хотел бы знать, если бы было возможно объединить его в один

спасибо

Крис

Ответы [ 2 ]

0 голосов
/ 20 ноября 2019

Как насчет union all?

select distinct number, null as letter
from t
union all
select number, 'd'
from t
where letter = 'd';
0 голосов
/ 20 ноября 2019

Это должно сделать это:

select distinct number, case when letter = 'd' then 'd' end letter from mytable

В Oracle вы можете использовать decode, чтобы сократить запрос:

select distinct number, decode(letter, 'd', 'd') letter from mytable
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...