• 技术文章 >数据库 >mysql教程

    sql delete 语句用法介绍

    2016-06-07 17:48:45原创1493

    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核实处理。
    专题推荐:sql delete delete语句
    上一篇:mssqlserver数据库连接错误几种常见问题 下一篇:sql2005按日期自动备份指定数据库
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【腾讯云】年中优惠,「专享618元」优惠券!• 浅析MySQL删除方法:delete、truncate、drop的区别• 图文实例解析MySQL的用户管理• mysql中pid文件丢失怎么办• mysql启动报错1067怎么办• mysql中什么时候用临时表
    1/1

    PHP中文网