SQL删除语句概述

本文介绍了SQL Server中删除数据的各种方法,包括没有WHERE子句、使用WHERE子句、TOP WHERE、删除重复行、子查询、连接、链接服务器和OpenQuery以及使用SSMS删除行。强调了在执行删除操作时的注意事项,如使用SELECT预览、避免全表删除、使用唯一标识符等。
摘要由CSDN通过智能技术生成

关于SQL Delete的这篇文章是关于SQL Server中关键语句,函数和操作的SQL必备系列的一部分。

要从表中删除行,请使用delete关键字通过数据操作语言(即DML语句)完成。到目前为止,SQL删除操作是所有DML命令中最简单的操作。在执行delete命令时,我们不必担心从表中获取任何形式的数据,我们不必担心使用从表中获取的任何数据。我们只是简单地告诉数据库删除一个特定的记录,它要么是,要么不是。就这么简单。

首先,让我们快速回顾一下SQL删除语句的样子。我们需要告诉数据库和表它应该删除数据的位置。添加条件子句以设置数据删除范围是个好主意。否则,它将删除表中的所有内容。

让我们看看我们的表并删除一些记录。

如何删除没有where子句的行

以下示例从AdventureWorks2014数据库中的表中删除Person.Person中所有行。使用WHERE子句对SQL删除语句没有强制实施限制。

使用Adventureworks2014;
DELETE  FROM [人] [人]。

如何删除Where子句的行

以下示例从AdventureWorks2014数据库中的[Person]。[Person]表中删除行,其中businessEntityID列中的值大于30,000

使用Adventureworks2014;
  [人]中删除。[人]
WHERE businessEntityID> 30000 ;

注意:可能发生的一个不幸的错误是意外地运行没有Where子句的SQL删除并且无意中删除了所有数据。为防止这种情况发生,请考虑使用ApexSQL Complete中的执行保护功能,在执行之前警告这些可能具有破坏性的操作。了解更多:执行警报

如何使用Top Where子句删除行

以下示例从AdventureWorks2014数据库中的Person.Person表中删除50个随机行。BusinessEntityID中的值必须介于30,000和40,000之间。

使用Adventureworks2014;
 [人]中删除顶部(50)。[人]
WHERE BusinessEntityID 介于 30000   40000 之间

注意:TOP(n)子句与SQL Delete语句和任何DML语句(即Select,Insert,Delete和Update)一起使用时,操作是在Top子句中指定的行数的随机选择上执行的。

如何删除重复行

在现实世界中,我们倾向于从不同来源收集数据; 拥有重复记录并不罕见。解决重复问题的一种方法是首先确定重复发生的位置。并对这些列运行选择查询。

EATE 
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值