Mysql 根据另一个表从表中删除记录

Mysql 根据另一个表从表中删除记录,mysql,sql,sql-delete,Mysql,Sql,Sql Delete,我在MYSQL中有两个表,看起来像这样: 表A: id1 | id2 | id3 | id4 | 1 | 15 | 26 | 12 | 2 | 27 | 12 | 15 | 1 | 4 | 82 | 18 | 4 | 11 | 37 | 22 | 1 | 21 | 31 | 24 | 表b: id1 | id2 | 2 | 27 | 1

我在MYSQL中有两个表,看起来像这样:

表A:

id1  |  id2  |  id3  |  id4  |
 1   |   15  |   26  |   12  |
 2   |   27  |   12  |   15  |
 1   |   4   |   82  |   18  |
 4   |   11  |   37  |   22  |
 1   |   21  |   31  |   24  |
表b:

id1  |  id2  |
 2   |   27  | 
 1   |   21  |
我想删除表A中与表B中的字段部分匹配的行(意味着从表A中删除第2行和第5行)

有人有主意吗?
谢谢:)

使用
Exists
Join
语法删除匹配的记录。试试这个

delete 
from TableA
where exists 
(
select 1 
from TableB B 
where TableA.id1 = B.id1 and TableA.id2 = B.id2
)

您可以使用多表删除语法:

delete TableA.* 
from TableA
inner join TableB on TableB.id1 = TableA.id1 and TableB.id2 = TableA.id2;