今天在实现业务时发现经常使用exists语句竟然执行效率低下根本不出结果,反而innerjoin可以瞬间得到结果。后来发现是因为exsits需要从40万的数据集中去匹配200条数据是非常消耗资源的。 总结: 首先要确定数据分布情况,高命中的情况下使用exists的效率要比innerjoin的高,低命中率的情况下还是使用innerjoin的效率高。 如果在不清楚数据分布情况的情况下,直接用innerjoin比较稳定