【发布时间】:2018-03-27 11:46:44
【问题描述】:
例如: 我有两种情况
card cardholder level
1 1 1
1 1 2
1 1 3
card cardholder level
1 1 2
1 1 3
在这两种情况下,我只想要第一条记录。
我得到了类似的东西,但没有返回预期的结果:
delete from table
where card in (select card from (
select cardholder, card, count(card), count(cardholder) from table
group by cardholder, card
having COUNT (card) > 1))
and level = '3'
;
【问题讨论】:
-
你的表中没有主键吗?
-
如果您没有 PK,您唯一可以关闭的就是添加一个
order by card, cardholder, level,您还需要添加一个LIMIT,共 1 个 -
@schlonzo 我有一个表 ID 作为 PK。
标签: sql oracle sql-delete