在SQL中删除表

在SQL中,DELETE语句是一个数据操作语言语句,它允许我们从现有数据库表中删除一行或多行。该语句接受一个条件,查找符合指定条件的行,并将其从表中删除。

在本教程中,我们将研究SQL中的DELETE语句,了解如何使用它从表中删除现有行。

DELETE语句

SQL中DELETE语句的语法如下:

删除

table_name

在哪里

条件;

我们从DELETE子句开始,告诉数据库引擎我们希望删除一行或多行。

然后指定要从中删除行的表的名称。接下来,我们在WHERE子句中指定条件。这是一个重要的子句,因为它允许我们缩小希望删除的特定行。

如果省略WHERE子句,语句将从指定的表中删除所有行。请谨慎使用。

然后,该语句返回从表中删除的行数。

样表

在讨论如何使用DELETE语句的示例之前,先创建一个基本表以进行演示。

CREATE TABLE语句如下:

创建表

INT主键AUTO_INCREMENT;

product_name VARCHAR (255),

类别VARCHAR (255),

price DECIMAL(10,2),

量INT,

expiration_date日期,

条形码长整型数字

);

一旦我们创建了表,我们就可以将样例数据插入到表中,如下面的插入语句所示:

插入



产品(product_name,

类别,

价格,

量,

expiration_date,

条形码)

值('厨师帽25cm',

“面包房”,

24.67,

57岁的

“2023-09-09”,

2854509564204);

插入



产品(product_name,

类别,

价格,

量,

expiration_date,

条形码)

价值(“鹌鹑蛋罐头”、

“储藏室”,

17.99,

67年,

“2023-09-29”,

1708039594250);

插入



产品(product_name,

类别,

价格,

量,

expiration_date,

条形码)

价值(“咖啡-蛋诺卡布奇诺”,

“面包房”,

92.53,

10,

“2023-09-22”,

8704051853058);

插入



产品(product_name,

类别,

价格,

量,

expiration_date,

条形码)

价值('梨-多刺',

“面包房”,

65.29,

48,

“2023-08-23”,

5174927442238);

插入



产品(product_name,

类别,

价格,

量,

expiration_date,

条形码)

价值(“意面-天使的头发”,

“储藏室”,

48.38,

59岁的

“2023-08-05”,

8008123704782);

这将为我们提供如下表格:

例1:删除单行

最基本的删除操作是从表中删除单行。为此,可以使用具有唯一值的列来标识目标行。

例如,如果我们想要删除ID为9的“Pork - Shoulder”行,我们可以使用下面的子句:

删除



产品

在哪里

product_id = 9;

这将删除ID号为9的行。由于“product_id”列是主键,因此应该只有一行包含该值。

例2:删除多行

要删除多行,我们可以使用WHERE子句为目标行设置条件。我们可以使用IN、NOT IN、LIKE等条件操作符。

例如,假设我们希望删除食品室和产品类别的所有行。我们可以这样使用查询:

删除



产品

在哪里

类别IN ('produce', 'bakery');

这应该匹配“category”列中的“produce”和“bakery”值,并删除符合该条件的任何行。

结论

在本教程中,我们学习了关于DELETE语句的所有内容,它允许我们从给定的数据库表中删除一行或多行。