考虑以下情况
GroupId Name
------------
G1 A1
G1 A2
G1 A3
G2 B1
G2 A2
,其中GroupId
和Name
始终是唯一的。
现在我需要从所有组中将名称更改为C1
并删除其余组,所以基本上我需要的是
GroupId Name
------------
G1 C1
G2 C1
我怎样才能实现这个目标?
答案 0 :(得分:3)
试试这个:
delete YOUR_TABLE_HERE
where rowid NOT in (select max(rowid) from YOUR_TABLE_HERE group by groupId)
update YOUR_TABLE_HERE
set name = 'C1'