加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

Mysql学习mysql索引之隔离列的方法

发布时间:2020-12-24 10:00:07 所属栏目:编程 来源:网络整理
导读:《Mysql学习mysql索引之隔离列的方法》要点: 本文介绍了Mysql学习mysql索引之隔离列的方法,希望对您有用。如果有疑问,可以联系我们。 导读:本节内容:mysql隔离列如果在查询中没有隔离索引的列,mysql通常不会使用索引.隔离列意味着它不是表达式的一部分,

《Mysql学习mysql索引之隔离列的方法》要点:
本文介绍了Mysql学习mysql索引之隔离列的方法,希望对您有用。如果有疑问,可以联系我们。

导读:本节内容:mysql隔离列如果在查询中没有隔离索引的列,mysql通常不会使用索引.隔离列意味着它不是表达式的一部分,也没有位于函数中.例如...

本节内容:
mysql隔离列MYSQL学习

如果在查询中没有隔离索引的列,mysql通常不会使用索引.“隔离“列意味着它不是表达式的一部分,也没有位于函数中.MYSQL学习

例如:
?MYSQL学习

mysql>select id from test where id +1 =5;

可以轻易地看出where子句中的id等4,但是mysql却不会帮你求解方程,这取决于自己.
应该养成简化where子句的习惯,这样就会把被索引的列单独放在比较运算符的一边.MYSQL学习

再例如:
?MYSQL学习

mysql>select ... where TO_DAYS(CURRENT_DATE) - TO_DAYS(date_col)<=10;

这个查询会查找date_cool值离今天不超过10天的所有行,但是它不会使用索引,因为使用了TO_DAYS()函数.
稍作修改:
?MYSQL学习

mysql>select ... where data_cool >= DATE_SUB(CURRENT_DATE,INTERVAL 10 DAY);

这个查询就可以使用索引,但是它还可以改进.使用CURRENT_DATE将会阻止查询缓存把结果缓存起来,可以用常量替换掉CURRENT_DATE的值:
?MYSQL学习

mysql>select ... where date_cool >= DATE_SUB('2012-08-29',INTERVAL 10 DAY);

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读