我有两个如下查询。 第一个返回757数据 第二个返回545个数据
在这里,我不知道两个查询之间的区别在哪里。 我使用第一个优化查询执行时间
MDDR / MDDRJS
还有一个
SELECT supul.user_point_log_used_id, supul.point
FROM user_point_used_logs supul
left join user_point_logs supl
on supul.user_point_log_id=supl.return_id
and supl.return_id is null
答案 0 :(得分:2)
使用where supl.return_id is null
您的第二个查询充当inner join
-由于您在第一个查询中将supl.return_id is null in ON clause
与left join
一起使用,因此它会为您提供第一个表的所有结果
-这就是为什么结果不同的原因
SELECT supul.user_point_log_used_id, supul.point
FROM user_point_used_logs supul
left join user_point_logs supl
on supul.user_point_log_id=supl.return_id
where supl.return_id is null