这里讨论的是无法用使用连接查询代替IN/EXISTS子查询的情况,否则转为连接查询。
IN操作的原理是先进行子查询,然后进行主查询操作;而EXISTS操作的原理是先进行主查询操作然后再进行子查询操作。因此IN和EXISTS的使用场景是:
1、如果限制性强的条件在子查询中,那么使用IN操作;
2、如果限制性强的条件在主查询中,那么使用EXISTS操作。
这里讨论的是无法用使用连接查询代替IN/EXISTS子查询的情况,否则转为连接查询。
IN操作的原理是先进行子查询,然后进行主查询操作;而EXISTS操作的原理是先进行主查询操作然后再进行子查询操作。因此IN和EXISTS的使用场景是:
1、如果限制性强的条件在子查询中,那么使用IN操作;
2、如果限制性强的条件在主查询中,那么使用EXISTS操作。