SQL DELETE简介及实例

105 阅读4分钟

SQL DELETE

SQL DELETE简介

SQL删除是用来从表中删除记录的。我们可以在删除语句中使用where子句,从表中删除选定的记录。假设我们在查询中没有使用任何条件,那么表中的所有记录都会被删除。SQL删除是一个允许修改数据库表的DML查询;它将从数据库表中删除现有记录。

SQL DELETE的概述

  • 在执行这个命令时,我们需要小心,因为它将从表中删除记录。
  • 正如我们所知,我们在SQL中使用插入语句来插入语句。同样,对于从表中删除记录,我们使用删除语句。
  • 我们可以根据我们在查询中使用的条件,使用删除语句来删除表的行。
  • 当从表中删除记录时,我们可以在一个查询中使用一个以上的条件,记录将根据条件被删除。

SQL DELETE 语句

  • 该语句用于从表中删除现有记录。我们需要定义表名,并从中删除记录。
  • 在下面的第一个语法中,我们没有使用where条件,所以表的所有记录都将被删除。在第四种语法中,我们只使用了where条件,所以所有符合该条件的记录都将被删除。在第二种语法中,我们使用了两个带有where子句的条件,所以数据将在符合这两个条件时被删除。

语法

  • 从name_of_table中删除。
  • 从name_of_table中删除,其中name_of_column1 = value AND name_of_column = values。
  • 从name_of_table中删除,其中name_of_column <比较运算符> values。
  • 从name_of_table where condition中删除。

下面是语法的参数描述:

  • Delete - 该语句用于从表中删除行。我们可以使用带或不带where条件的delete语句来删除表中的记录。
  • From - 这是一个SQL关键字,用于定义我们删除记录的表名。
  • 表的名称 - 这只是我们删除记录的表的名称。当删除记录或执行查询时,我们需要定义表名。
  • Where condition - 这是在执行时最重要的参数。在SQL的删除语句中,where条件将被用来删除我们在where条件中定义的指定行。where条件对于使用sql删除语句删除特定条件的行是非常有用的。
  • 列的名称 - 这个表列是用来从表中删除数据的。假设我们使用了带有指定列的删除语句,它将会从表中删除记录。
  • AND - 这个关键字在删除语句中用来删除我们在查询中定义的指定列中的记录。
  • 当在where条件中使用单列时,删除查询将删除符合条件的指定记录。

SQL DELETE查询

  • SQL删除查询不区分大小写,我们可以使用DELETE或delete来执行SQL删除查询。
  • 下面的例子显示了查询是不分大小写的。在第一个例子中,我们使用了小写字母的sql delete查询;在使用sql delete查询后,它将被执行而不会产生任何错误。在第二个例子中,我们使用了大写字母的sql delete查询;在使用了大写字母的删除查询后,它也会执行而不发出任何错误。所以我们可以说,SQL删除查询是不分大小写的。
delete from sql_insert where id = 1001;
DELETE from sql_insert where id = 1001;

SQL DELETE - Image 1

  • 当在生产数据库服务器上执行任何删除查询时,我们需要非常小心,因为它可能会造成系统的停机。
  • 假设我们的应用程序只需要包含新的记录,同时我们需要删除旧的记录;我们可以使用这个语句来删除表中的旧记录。
  • 我们也可以使用比较运算符来删除表中的记录;使用比较运算符后,匹配的行将被删除。
Select * from sql_delete;
Select * from sql_delete1;

SQL DELETE - Image 2

  1. 在下面的例子中,我们使用where条件删除了指定的记录。我们在id列上使用了where条件。我们可以看到,两条记录将被删除,因为where条件将匹配这两行。
DELETE from sql_delete1 where id = 1001;
Select * from sql_delete1;

SQL DELETE - Image 3

2.在下面的例子中,我们使用双列的where条件从表中删除记录。我们使用id和stud_grade列的where条件。

DELETE from sql_delete1 where id = 1002 and stud_grade = 1;
Select * from sql_delete1;

Image 4

3.在下面的例子中,我们使用比较运算符来删除表中的记录。我们使用>,<和=操作符来删除记录。

DELETE from sql_delete1 where id > 1005;
DELETE from sql_delete1 where id < 1003;
DELETE from sql_delete1 where id = 1004;
Select * from sql_delete1;

Image 5

4.在下面的例子中,我们根据varchar数据类型列删除记录,如下所示。

Delete from sql_delete1 where stud_name = ‘ABC’;
Select * from sql_delete1;

Image 6

5.在下面的例子中,我们正在删除sql_delete1表中的全部记录,如下所示。

Delete from sql_delete1;
Select * from sql_delete1;

Image 7

结论

要从表中删除全部记录,我们不需要在执行删除查询时使用任何其他条件;我们只需要在删除查询中使用表名。在SQL数据库中,SQL删除查询是一个方便而重要的命令,可以从表中删除不需要的记录。