您的位置:首页 > 数据库

SQL 使用 DELETE 语句删除行

2007-11-10 00:30 381 查看

使用 DELETE 语句删除行

DELETE 语句可删除表或视图中的一行或多行。DELETE 语法的简化形式为:

DELETE table_or_view FROM table_sources WHERE search_condition

table_or_view 指定要从中删除行的表或视图。table_or_view 中所有符合 WHERE 搜索条件的行都将被删除。如果没有指定 WHERE 子句,将删除 table_or_view 中的所有行。FROM 子句指定删除时用到的额外的表或视图及联接条件,WHERE 子句搜索条件中的谓词使用它们限定要从 table_or_view 中删除的行。该语句不从 FROM 子句指定的表中删除行,而只从 table_or_view 指定的表中删除行。

任何已删除所有行的表仍会保留在数据库中。DELETE 语句只从表中删除行,要从数据库中删除表,必须使用 DROP TABLE 语句。

使用 DELETE 语句删除行


Transact-SQL

对于 Northwind 数据库中名为 Lyngbysild 的公司所提供的产品,以下脚本显示了删除与这些产品有关的行时所需要的三个 DELETE 语句。因为该脚本涉及了从现有订单中删除行,所以它不是一个典型的商业操作,但是它确实显示了一系列复杂程度不同的删除操作。

USE Northwind
GO
DELETE [Order Details]
FROM Suppliers, Products
WHERE Products.SupplierID = Suppliers.SupplierID
  AND Suppliers.CompanyName = 'Lyngbysild'
  AND [Order Details].ProductID = Products.ProductID
GO
DELETE Products
FROM Suppliers
WHERE Products.SupplierID = Suppliers.SupplierID
  AND Suppliers.CompanyName = 'Lyngbysild'
GO
DELETE Suppliers
WHERE CompanyName = 'Lyngbysild'
GO
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: