含有"IN"、"OR"的Where子句常會使用工作表,使索引失效;
如果不產生大量重復值,可以考慮把子句拆開;拆開的子句中應該包含索引。
例:
select count(*) from stuff where id_no in('0','1');--(23秒)
可以考慮將or子句分開:
select count(*) from stuff where id_no='0'; select count(*) from stuff where id_no='1';
然後再做一個簡單的加法,與原來的SQL語句相比,查詢速度更快。