>  기사  >  데이터 베이스  >  sql delete 语句用法介绍

sql delete 语句用法介绍

WBOY
WBOY원래의
2016-06-07 17:48:454498검색

DELETE 语句用于删除表中的行,这种删除理论上来是不是可恢复的,但是经过一些高级的处理还是可以恢复数据的,不过比较麻烦了。

语法
DELETE FROM 表名称 WHERE 列名称 = 值

 

国外网站参考

 代码如下 复制代码

The SQL DELETE command has the following generic SQL syntax:


DELETE FROM Table1
WHERE Some_Column = Some_Value

 如果你跳过的SQL WHERE子句执行DELETE语句表达时,然后在指定的表的所有数据将被删除。下面的SQL语句会从客户表中删除所有的数据和我们?l升完全空表:

 

 代码如下 复制代码
DELETE FROM Table1

 
如果您指定一个WHERE子句在您的SQL DELETE语句,只符合标准将被删除表中的行:

 

 代码如下 复制代码

DELETE FROM Customers
WHERE LastName = 'Smith'

 删除更多
您也可以执行更复杂的删除。

您可能希望基于另一个表中的值的一个表中删除记录。既然你不能FROM子句中列出多个表中,当您执行删除,您可以使用EXISTS子句
For example:

 代码如下 复制代码

DELETE FROM suppliers
WHERE EXISTS
  ( customers.name
     from customers
     where customers.customer_id = suppliers.supplier_id
     and customers.customer_name = 'IBM' );

这将在供应商表,其中有一个客户表的名称是IBM,CUSTOMER_ID是相同的supplier_id记录中删除所有记录。

了解EXISTS的条件。

如果你想确定将被删除的行的数目,您可以运行下面的SQL语句,在执行删除之前。

 代码如下 复制代码


SELECT count(*) FROM suppliers
WHERE EXISTS
  ( select customers.name
     from customers
     where customers.customer_id = suppliers.supplier_id
     and customers.customer_name = 'IBM' );

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.