这应该是一个简单的问题,但是我还没有找到明确的答案。有谁知道如何使用单个查询从SQL Server 2005中的单个表中删除多行?我想知道这是否只是使用UNION ALL
方法插入多行的相反方法。这样可以吗? :
DELETE FROM Table (Name, Location)
SELECT 'Name1', 'Location1'
UNION ALL
SELECT 'Name2', 'Location2'
UNION ALL
SELECT 'Name3', 'Location3'
etc...
编辑:我应该指出,这是我要从中删除记录的链接表。没有主键,并且任何列的值都可以重复。因此,在删除记录之前,我需要确保两列都包含同一记录的特定值。
最佳答案
您可以尝试以下方法:
DELETE FROM YourTable
WHERE (Name = 'Name1' AND Location = 'Location1')
OR (Name = 'Name2' AND Location = 'Location2')
OR (Name = 'Name3' AND Location = 'Location3')
关于sql - 使用单个查询删除多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3272668/