SQL DELETE 语句:删除表中的记录语法及案例剖析

SQL DELETE 语句



DELETE 语句用于删除表中的记录。


SQL DELETE 语句

DELETE 语句用于删除表中的行。

SQL DELETE 语法

DELETE FROM table_name
WHERE some_column=some_value;

请注意 SQL DELETE 语句中的 WHERE 子句!
WHERE 子句规定哪条记录或者哪些记录需要删除。如果您省略了 WHERE 子句,所有的记录都将被删除!

演示数据库

在本教程中,我们将使用 样本数据库。

下面是选自 "Websites" 表的数据:

+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘宝          | https://www.taobao.com/   | 13    | CN      |
| 3  | 菜鸟教程      | http://www.runoob.com/    | 5000  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
|  6 | 百度         | https://www.baidu.com/    |     4 | CN      |
|  7 | stackoverflow | http://stackoverflow.com/ |     0 | IND     |
+----+---------------+---------------------------+-------+---------+

SQL DELETE 实例

假设我们要从 "Websites" 表中删除网站名为 "百度" 且国家为 CN 的网站 。

我们使用下面的 SQL 语句:

实例

DELETEFROMWebsitesWHEREname=‘百度‘ANDcountry=‘CN‘;

执行以上 SQL,再读取 "Websites" 表,数据如下所示:


删除所有数据

您可以在不删除表的情况下,删除表中所有的行。这意味着表结构、属性、索引将保持不变:

DELETE FROM table_name;

DELETE * FROM table_name;

注释:在删除记录时要格外小心!因为您不能重来!

原文地址:https://www.cnblogs.com/peijz/p/12432498.html

时间: 2024-12-16 01:54:30

SQL DELETE 语句:删除表中的记录语法及案例剖析的相关文章

SQL UPDATE 语句:更新表中的记录语法及案例剖析

SQL UPDATE 语句 UPDATE 语句用于更新表中的记录. SQL UPDATE 语句 UPDATE 语句用于更新表中已存在的记录. SQL UPDATE 语法 UPDATE table_name SET column1=value1,column2=value2,... WHERE some_column=some_value; 请注意 SQL UPDATE 语句中的 WHERE 子句! WHERE 子句规定哪条记录或者哪些记录需要更新.如果您省略了 WHERE 子句,所有的记录都将被

SQL语句删除表中所有记录的方法

如何用一条sql语句删除表中的所有记录,这里分享下我的方法.参考链接: sql语句如何删除重复记录?四种方法 sql语句如何删除重复记录?教程详解 TRUNCATE TABLE删除表中的所有行,而不记录单个行删除操作. 语法TRUNCATE TABLE name 参数name 是要截断的表的名称或要删除其全部行的表的名称. 注释TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行.但 TRUNCATE TABLE 比 DELETE 速度

删除表中重复记录大于两条保存两条

--删除表中重复记录大于两条保存两条delete from t_Cht_clm_reg F where F.case_id in (select T.case_id from (select B.* from (select e.* , row_number() over (partition by e.notice_id order by e.case_id desc) rn from t_Cht_clm_reg e) B where B.notice_id in(select A.notic

SQL INSERT INTO 语句:向表中插入新记录语法及案例剖析

SQL INSERT INTO 语句 INSERT INTO 语句用于向表中插入新记录. SQL INSERT INTO 语句 INSERT INTO 语句用于向表中插入新记录. SQL INSERT INTO 语法 INSERT INTO 语句可以有两种编写形式. 第一种形式无需指定要插入数据的列名,只需提供被插入的值即可: INSERT INTO table_name VALUES (value1,value2,value3,...); 第二种形式需要指定列名及被插入的值: INSERT I

SQL 删除表中重复记录只剩一条

今天不小心插入数据时插入重复了 这表中没有任何主键外键,随便插入或删除 网上查了很多复杂的语句都没有解决问题 最后用delete top (1) 解决问题 delete top (1) from Persion where name = 'xiaomin' 也可以用 update top (1) from person where name ='xxxx' delete from person where name = 'xxxx' 没那么复杂

SqlServer删除表中重复记录

重复记录:有两个意义上的重复记录 一是完全重复的记录,也即所有字段均重复的记录: 二是部分关键字段重复的记录,比如Name字段重复,而其他字段不一定重复或都重复可以忽略. 1.对于第一种重复,比较容易解决,使用 1 select distinct * from tableName 就可以得到无重复记录的结果集. 如果该表需要删除重复的记录(重复记录保留1条),可以按以下方法删除 1 --查询无重复记录的结果集,并将结果集保存到临时表#Tmp 2 select distinct * into #T

删除表中重复记录

create table myTable1(id int primary key identity,col1 int,col2 int) DECLARE @i int;set @i=0;WHILE @i<10 BEGIN INSERT INTO myTable1 VALUES(@i,@i); INSERT INTO myTable1 VALUES(@i,@i); SET @i+=1; End --找到重复的记录SELECT col1,col2 from myTable1 GROUP BY col

使用oracle删除表中重复记录

(1)使用用rowid方法 查询重复数据:select * from person a where rowid !=(select max(rowid) from person b where a.cardid=b.cardid and a.pname=b.pname);        删除重复数据:delete from person a where rowid !=(select max(rowid) from person b where a.cardid=b.cardid and a.p

使用一条sql查询多个表中的记录数

方法一: select t1.num1,t2.num2,t3.num3 from (select count(*) num1 from table1) t1, (select count(*) num2 from table2) t2, (select count(*) num3 from table3) t3 方法二: select sum(t.num1),sum(t.num2),sum(t.num3) from ( select count(*) num1,0 as num2,0 as nu