在MySQL中,一些函数是可以使用索引的,包括: 1、聚合函数:例如SUM()、AVG()、MAX()、MIN()等。 2、字符串函数:例如LEFT()、RIGHT()、SUBSTR()、LOCATE()等。 3、数学函数:例如ABS()、CEIL()、FLOOR()、ROUND()等。 4、...
在MySQL中,一些函数是可以使用索引的,包括:
1、聚合函数:例如SUM()、AVG()、MAX()、MIN()等。
2、字符串函数:例如LEFT()、RIGHT()、SUBSTR()、LOCATE()等。
3、数学函数:例如ABS()、CEIL()、FLOOR()、ROUND()等。
4、日期和时间函数:例如YEAR()、MONTH()、DAY()、HOUR()、MINUTE()、SECOND()等。
5、逻辑函数:例如IF()、CASE WHEN()等。
6、索引函数:
BINARY: 将字符串作为二进制字符串进行比较,会使用到索引。
CAST: 将一个表达式转换成另外一个数据类型,会使用到索引。
COALESCE: 返回参数列表中的第一个非NULL值,如果第一个参数不是索引列,将不会使用到索引。
IFNULL: 如果第一个参数不是NULL,则返回第一个参数,否则返回第二个参数,如果第一个参数不是索引列,将不会使用到索引。
LOWER: 将字符串转换为小写形式进行比较,会使用到索引。
UPPER: 将字符串转换为大写形式进行比较,会使用到索引。
TRIM: 去除字符串首尾的空格或指定的字符,如果第一个参数不是索引列,将不会使用到索引。
REPLACE: 替换字符串中指定的子字符串,如果第一个参数不是索引列,将不会使用到索引。
SUBSTR: 返回字符串的一部分,会使用到索引。
LENGTH: 返回字符串的长度,会使用到索引。
需要注意的是,使用这些函数时,是否会使用到索引还取决于具体的查询语句和表结构。如果函数的使用导致了索引列的数据类型发生了改变,那么可能会失去索引的优势。因此,在使用这些函数时,需要根据具体情况进行评估和测试,以确保查询的性能和正确性。
本文标题为:MySQL哪些函数走索引


基础教程推荐
- 从字符串 TSQL 中获取数字 2021-01-01
- 带更新的 sqlite CTE 2022-01-01
- MySQL根据从其他列分组的值,对两列之间的值进行求和 2022-01-01
- CHECKSUM 和 CHECKSUM_AGG:算法是什么? 2021-01-01
- ORA-01830:日期格式图片在转换整个输入字符串之前结束/选择日期查询的总和 2021-01-01
- 使用 VBS 和注册表来确定安装了哪个版本和 32 位 2021-01-01
- 带有WHERE子句的LAG()函数 2022-01-01
- while 在触发器内循环以遍历 sql 中表的所有列 2022-01-01
- 如何在 CakePHP 3 中实现 INSERT ON DUPLICATE KEY UPDATE aka upsert? 2021-01-01
- MySQL 5.7参照时间戳生成日期列 2022-01-01