一、exists和in有何区别如下? exists使用循环的方式,由outer表的记录数决定循环的次数,对于exists的影响最大,所以,外表的记录越小,子查询结果集较大时适用于exists; in 先执行子查询,子查询的结果返回去重之后,再执行主查询,所以,子查询的返回结果越少,越适合使用in关键字。 二、SQL语句的优化方式有那些? 1. 尽量避免非操作符的使用。在索引列上用NOT,等非操作符会导致索引失效,数据库管理系统是不会使用索引的,可以将查询语句转换为可以使用索引的查询。 2. 避免对查询列的操作。任何对查询列的操作都有可能导致全表