Postgresql:WHERE IN替代WHERE IN IN
发布时间:2020-12-13 16:08:34 所属栏目:百科 来源:网络整理
导读:我有几个语句访问非常大的 Postgresql表,即: SELECT a.id FROM a WHERE a.id IN ( SELECT b.id FROM b );SELECT a.id FROM a WHERE a.id NOT IN ( SELECT b.id FROM b ); 他们中的一些人甚至以这种方式访问??更多的桌子.如果我切换到连接,那么提高性能的最
我有几个语句访问非常大的
Postgresql表,即:
SELECT a.id FROM a WHERE a.id IN ( SELECT b.id FROM b ); SELECT a.id FROM a WHERE a.id NOT IN ( SELECT b.id FROM b ); 他们中的一些人甚至以这种方式访问??更多的桌子.如果我切换到连接,那么提高性能的最佳方法是什么? 非常感谢! 解决方法
JOIN效率会更高,或者您可以使用EXISTS:
SELECT a.id FROM a WHERE EXISTS (SELECT 1 FROM b WHERE b.id = a.id) 子查询最多返回1行. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |