EXISTS和IN的效率比较&&Union和Union All到底有什么区别

一. EXISTS和IN的效率

IN适合于外表大而内表小的情况;EXISTS适合于外表小而内表大的情况;

外层查询表小于子查询表,则用exists,外层查询表大于子查询表,则用in,如果外层和子查询表差不多,则爱用哪个用哪个

1. 当子查询大于外层查询时,EXISTS比IN效率高;
2. 当子查询小于外层查询时,EXISTS比IN效率低;

二. Union和Union All到底有什么区别

Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;

Union All:对两个结果集进行并集操作,包括重复行,不进行排序;

你可能感兴趣的:(数据库)