MySQL数据库知识总结

30、使用 MySQL 的索引应该注意些什么?

2022-08-26  本文已影响0人  RUMyCola

使用 MySQL 的索引应该注意些什么?

        1、应尽量避免在WHERE子句中使用!=或<>操作符,否则将导致引擎放弃使用索引而进行全表扫描.优化器将无法通过索引来确定将要命中的行数,因此需要搜索该表的所有行.

        2、应尽量避免在WHERE子句中使用OR来连接条件,否则将导致引擎放弃使用索引而进行全表扫描,如:SELECT id from t where num=10 OR num=20.

        3、应尽量避免在where子句中对字段进行表达式操作,这将导致引擎放弃使用索引而进行全表扫描.

        4、应尽量避免在where子句中对字段进行函数操作,这将导致引擎放弃使用索引而进行全表扫描.

        5、不要在where子句中的=左边进行函数、算术或其他表达式运算,否则系统将可能无法正确使用索引.

        6、复合索引遵循最左前缀原则.

        7、如果MYSQL评估使用索引比全表扫描更慢,会放弃使用索引.如果此时想要索引,可以在语句中添加强制索引.

        8、列类型是字符串类型,查询时一定要给值加引号,否则索引失效.

        9、like查询,%不能在前,因为无法使用索引.如果需要模糊匹配,可以使用全文索引.

        10、表字段为null也是不可以使用索引的.

        11、字段是字符串类型的使用过程中,必须加引号,否则索引失效.

上一篇下一篇

猜你喜欢

热点阅读