SQL - 如果有多个相同值的x,则删除最后一行

时间:2017-05-26 13:33:00

标签: sql-server sql-server-2008

可以在sql中执行类似的操作:

DELETE TOP 1 FROM items WHERE ItemID = 'xxx' and count(ItemID) > 6 order by index

因此,如果有超过6行的' xxx'作为itemID,它会删除比那些项目ID更新的东西吗?

1 个答案:

答案 0 :(得分:2)

我认为,我们无法在删除查询中使用前1 。但是我们可以在where where condition作为子查询使用它。使用子查询获取数据库ID列表并将其删除。

DELETE FROM items WHERE id in (select top 1 id from items ItemID = 'xxx' and count(ItemID) > 6 order by index)