如何在 SQL 中删除一条记录?

2021-09-27 11:21:04 浏览数 (27242)

在 SQL 中,您可以使用DELETE查询和WHERE子句删除表中的一条记录。在本文中,我将向您介绍如何使用DELETE查询和WHERE子句删除记录。我还将向您展示如何一次从表中删除多条记录

如何在 SQL 中使用 DELETE 

这是使用DELETE的基本语法:

DELETE FROM table_name
WHERE condition of which row(s) to delete;

在此示例中,我们有一个名为cats的表,其中当前有 10 行。列则是id,name和gender。

我们要删除idLoki 所在行的 第8 行。

DELETE的第一行如下所示:

DELETE FROM cats

在第二行中,我们将用WHERE子句使用id=8指定哪一条记录。

WHERE id=8;

以下是删除 Loki 行的完整语法:

DELETE FROM cats
WHERE id=8;

这是新cats表的样子:

我们可以看到我们的DELETE有效,因为 Loki 的信息不再存在。

如何从SQL中的表中删除多行条记录

我们可以从cats表中删除多行的一种方法是将条件从 id为gender。

如果我们只想删除包含公猫的行,那么我们可以使用gender="M"条件。

DELETE FROM cats
WHERE gender="M";

我们的新cats表看起来像这样:

现在该cats表仅显示雌性猫。

如何在 SQL 中使用 BETWEEN 运算符和 AND 运算符删除多条记录

如果我们想删除一个范围内的多条记录,我们可以将AND操作符与BETWEEN操作符一起使用。

在这个例子中,我们想要删除ids 为 4-7 的记录。

这是语法:

DELETE FROM cats
WHERE id BETWEEN 4 AND 7;

这是该DELETE查询的结果:

我们可以看到第 1-3 行和第 8-10 行留在我们的表中。id已成功删除 4-7的s。

如何在 SQL 中使用 IN 运算符删除多条记录

我们可以在cats使用IN运算符指定要从表中删除的名称。

在这个例子中,我想从cats这里的原始表中删除 Lucy、Stella、Max 和 Tiger 的名字:

我们需要指定列并使用IN运算符列出我们要删除的名称。

DELETE FROM cats
WHERE name IN ("Lucy","Stella","Max","Tiger");

这就是新结果的样子:

我们的DELETE查询成功了,因为那四只猫不再出现在表中。

SQL如何删除表中的所有记录

如果要从表中删除所有信息,则可以使用以下语法:

DELETE FROM table_name;

为了从我们的cats表中删除所有的猫,我们将使用此代码。

DELETE FROM cats;