1、尽量不要使用 or,否则会降低查询效率,因为or会引起全表扫描。
2、避免使用“select *”,尽量使用“select 字段1,字段2,字段3........”。
3、避免使用 != 或 <> 等这样的操作符,因为它会使系统无法使用索引,而只能直接搜索表中的数据。
4、用 exists 代替 in : select num from a where num in(select num from b) 用下面的语句替换: select num from a where exists(select 1 from b where num=a.num)。
5、避免在 where 子句中使用 or 来连接条件,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num=10 or num=20 可以这样查询: select id from t where num=10 union all select id from t where num=20