gpt4 book ai didi

MySQL - 将 LEFT JOIN 替换为 NOT IN

转载 作者:行者123 更新时间:2023-11-30 00:22:17 25 4
gpt4 key购买 nike

在三个表之间使用两个 LEFT JOIN 的正确 MySQL 查询是什么?

SELECT COUNT(1) FROM TABLE1 WHERE T1_ID NOT IN ( 
SELECT T2.T2_ID FROM TABLE2 T2 LEFT JOIN
TABLE3 T3 ON T2.T2_ID=T3.T3_ID WHERE T3.T3_ID IS NULL )

类似

SELECT COUNT(1) FROM TABLE1 T1 LEFT JOIN TABLE2 T2 ON T1.T1_ID=T2.T2_ID 
LEFT JOIN TABLE3 T3 ON T2.T2_ID=T3.T3_ID WHERE T2.T2_ID IS NULL AND
T3.T3_ID IS NULL

最佳答案

为了性能,我会做类似的事情

SELECT 
COUNT(1)
FROM
TABLE1

LEFT JOIN (
SELECT
T2.T2_ID id
FROM
TABLE2 T2

LEFT JOIN TABLE3 T3 ON
T2.T2_ID=T3.T3_ID
WHERE
T3.T3_ID IS NULL
) t1 ON
t1.id = table1.t1_id
WHERE
t1 is null;

关于MySQL - 将 LEFT JOIN 替换为 NOT IN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23138743/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com