SELECT a.sid from (select sid from tb_stu where 1=1 ORDER BY id DESC) a INNER join tb_award b on a.sid+0=b.stu_sid+0
SELECT sid FROM tb_stu A where exists (select stu_sid as sid from tb_award B where B.stu_sid+0 = A.sid+0 group by B.id) ORDER BY A.id;
这是现在的方案一和方案二,但是实在太慢了。
希望大佬可以提个优化建议。
对于要求全面的结果时,我们需要使用连接操作(LEFT JOIN / RIGHT JOIN / FULL JOIN);
不要以为使用MySQL的一些连接操作对查询有多么大的改善,核心是索引;
对被驱动表的join字段添加索引;
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。