sql - 如果重复,则获取一条记录

etl*_*lds 1 sql

例如,我有一个这样的表.

+----+------+
| id | type |
+----+------+
| 1  |  I   |
| 2  |  E   |
| 4  |  I   |
| 4  |  E   |
| 5  |  E   |
| 6  |  E   |
| 7  |  E   |
| 8  |  E   |
| 8  |  I   |
+----+------+
Run Code Online (Sandbox Code Playgroud)

我想要返回不同的id,如果'I'和'E'都出现'我'

+----+------+
| id | type |
+----+------+
| 1  |  I   |
| 2  |  E   |
| 4  |  I   |
| 5  |  E   |
| 6  |  E   |
| 7  |  E   |
| 8  |  I   |
+----+------+
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

jue*_*n d 5

本集团id,并使用max()获得I既然I是greather比E按字母顺序

select id, max(type) as type
from your_table
group by id
Run Code Online (Sandbox Code Playgroud)