在 MySQL 5.7 中,在两张关联表中,查询在一张表中存在,但在另一张表中不存在的数据
1、在表 table1 中的字段 table2_id 关联了 表 table2 的主键字段 id。现在需要查询在表 table1 中存在,但在表 table2 中不存在的数据。最终实现的 SQL 如下。如图1
SELECT
*
FROM
`db1_20230810`.`table1`
WHERE
NOT EXISTS ( SELECT * FROM `db2_20230810`.`table2` WHERE ( `table2`.`id` = `table1`.`table2_id` ) AND ( `table2`.`deleted_at` IS NULL ) )
AND ( `table1`.`role` != 'development' )
AND (
`table1`.`deleted_at` IS NULL
)
