从MySQL表中删除多个条目

要从MySQL表中删除多个条目,请使用JOIN。让我们首先创建一个表-

create table DemoTabl(Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100));

使用插入命令在表中插入一些记录-

insert into DemoTable(FirstName) values('Chris');
insert into DemoTable(FirstName) values('Bob');
insert into DemoTable(FirstName) values('Mike');
insert into DemoTable(FirstName) values('Adam');
insert into DemoTable(FirstName) values('Bob');
insert into DemoTable(FirstName) values('Adam');
insert into DemoTable(FirstName) values('Bob');
insert into DemoTable(FirstName) values('Mike');

使用select语句显示表中的所有记录-

select *from DemoTable;

这将产生以下输出-

+----+-----------+
| Id | FirstName |
+----+-----------+
| 1 | Chris      |
| 2 | Bob        |
| 3 | Mike       |
| 4 | Adam       |
| 5 | Bob        |
| 6 | Adam       |
| 7 | Bob        |
| 8 | Mike       |
+----+-----------+
8 rows in set (0.00 sec)

以下是删除多个条目的查询-

delete DemoTable
   from DemoTable
      join DemoTable tbl on DemoTable.FirstName= tbl.FirstName
      where tbl.FirstName = 'Bob';

让我们再次检查表记录-

select *from DemoTable;

这将产生以下输出-

+----+-----------+
| Id | FirstName |
+----+-----------+
| 1 | Chris      |
| 3 | Mike       |
| 4 | Adam       |
| 6 | Adam       |
| 8 | Mike       |
+----+-----------+
5 rows in set (0.00 sec)