2017-06-28 3 views
1

最小共通値を選択しようとしています。たとえば、私のデータがこのように見える場合は、0145 - London 0145の結果が必要です。最小共通値を選択しようとしています

0810 - City 0810 
0810 - City 0810 
0810 - City 0810 
0810 - City 0810 
0810 - City 0810 
0810 - City 0810 
0810 - City 0810 
0145 - London 0145 
0900 - City2 0900 
0900 - City2 0900 
次のようなものが正しい方向に向かっているがありますが、念頭に置いていた他のデータの条件とすることができるが、私はかなり確信しているかもしれ
+1

はこれまで、複数の異なるものがあるように起こっていますか? – Quark

+0

はい、そうかもしれません。 –

+0

複数ある場合は、それらのすべてを選択しますか? – Quark

答えて

0

with my_tab as 
(
select '0810 - City 0810' my_col from dual union all 
select '0810 - City 0810' my_col from dual union all 
select '0810 - City 0810' my_col from dual union all 
select '0810 - City 0810' my_col from dual union all 
select '0810 - City 0810' my_col from dual union all 
select '0810 - City 0810' my_col from dual union all 
select '0810 - City 0810' my_col from dual union all 
select '- Raleigh 0123' my_col from dual union all 
select '- Raleigh 0123' my_col from dual union all 
select '0145 - London 0145' my_col from dual 
) 
, my_group as 
(
select my_col, count(*) cnt 
from my_tab 
group by my_col 
) 
select my_col 
from my_group 
where cnt < (select max(cnt) from my_group) 
; 
関連する問題