在编写 SQL 查询时,尤其是在 WHERE 子句中,应尽量避免对索引列使用函数或计算。
当索引列参与计算时,例如 SAL * 12 > 25000
, 数据库优化器很可能无法使用该索引,从而导致全表扫描,降低查询效率。
为了优化查询性能,建议将计算移至条件表达式的另一侧,直接使用索引列进行比较。例如,将 SAL * 12 > 25000
改写为 SAL > 25000/12
,这样数据库优化器就能有效地利用索引,提高查询速度。
在编写 SQL 查询时,尤其是在 WHERE 子句中,应尽量避免对索引列使用函数或计算。
当索引列参与计算时,例如 SAL * 12 > 25000
, 数据库优化器很可能无法使用该索引,从而导致全表扫描,降低查询效率。
为了优化查询性能,建议将计算移至条件表达式的另一侧,直接使用索引列进行比较。例如,将 SAL * 12 > 25000
改写为 SAL > 25000/12
,这样数据库优化器就能有效地利用索引,提高查询速度。