Я искал решение этой проблемы, но все еще не мог найти наиболее похожую проблему, чем эта SQL Group BY COLUMN Выберите конкретные строки .
Так вот моя проблема
Type_Table
column1 | column2
a | s
a | m
a | e
b | s
b | e
c | m
c | s
так что в основном я хочу сгруппировать по column1, но выбирая только значения в column2 = e, но если его нет в дублированном значении в column1, тогда выберите column2 = s, но если это не таксуществует в дублированном значении column1, затем выберите column2 = m.Таким образом, итоговая таблица будет выглядеть так:
column1 | column2
a | e
b | e
c | s
Я использовал это select column1,case when column2=e then e when column2=s then s when column2=m then m end column2 from type_table group by 1
, но, очевидно, это не сработает.Что мне нужно, так это сгруппировать по column1 и для каждого другого значения в column2 выберите только e, если существует для их соответствующего значения column1, но выберите s, если e не существует, и выберите m, если s не существует.Спасибо за ваши ответы