如何删除SQL 2000中的TOP n结果?
我知道在 SQL Server 2005 中我们可以这样做:
从 tbX 中删除前 10 个,其中 X = 1
考虑主键由两个 FK 列组成,在 SQL2K 中执行相同操作的查询可能是什么?
I know in SQL Server 2005 we could do something like:
DELETE TOP 10 FROM tbX where X = 1
What could be the query to do the same in SQL2K, considering that the primary key is composed by two FK columns?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
哈克,但是:
不过,我不会自己写这个;-p
(我要去洗手......)
hacky, but:
I wouldn't write this myself, though ;-p
(I'm off to wash my hands...)
这在 SQL2012 中对我有用:
This works for me in SQL2012:
您必须先删除外键记录。
You would have to delete the foreign key records first.
这不是有效的 SQL,但类似的东西可能有效:
注意:如果 TOP 在子查询中不起作用,只需将内容插入到临时表中并连接。
This is not working SQL but something along the lines may work:
Note: If TOP does not work in the subquery just insert the stuff into a temp table and join.
当处理复合键时,我会像这样删除。
when dealing with a composite key I would delete like this.