在进行查询优化时,应避免全表扫描,首要考虑在涉及的where和order by列上建立索引。避免在where子句中对字段进行null值判断,以免引擎放弃索引而进行全表扫描。例如,可以在num列设置默认值0,并调整查询为select id from t where num=0。另外,还需避免使用!=或<>运算符,以及在where子句中过度使用OR,可以通过重写查询或使用UNION ALL优化IN和NOT IN语句。