索引可以提高查询效率,平时按照时间查询经常遇到,所以就会给时间添加索引,但是添加索引怎么用呢?

首先创建一张表test_table

然后给时间字段创建索引

导入大量数据,可以使用存储过程

查看一下表中数据条数

一共78W数据,我们用平常的sql查询2019-12-30号当天的数据

SELECT * FROM test_table WHERE DATE_FORMAT(create_time,"%Y-%m-%d") >= '2019-12-30'

一共891条数据,耗时400ms左右

用EXPLAIN查看一下sql是否使用到索引

这是因为使用函数时,索引会失效

用下面这种方式就可以使用索引

SELECT * FROM test_table WHERE create_time >= str_to_date('2019-12-30', '%Y-%m-%d')

耗时30ms左右,效率提升了10倍

用EXPLAIN查看一下sql

这样就用到了时间索引

总结:避免使用函数对时间字段进行格式化为字符串,而是将需要查询的时间字符串转化为时间类型

文章转载:原文链接

mysql时间字段使用索引相关推荐

  1. mysql时间字段不走索引_MySQL使用=或=范围查询时不走索引

    2020-02-27 最近一个日志页面查询很慢,然后去跟踪了查询sql,发现日期字段上即使建了索引,查询还是很慢,执行语句还是使用了全表扫描,于是继续分析下去. 查询语句类似: select * fr ...

  2. MySQL时间查询不走索引,MySQL带时间字段的范围查询不走索引了?

    今天群里抛出了个乍看之下很迷的问题: 看到问题的第一瞬间,我想这是什么原理,比较方向的修改就能引起索引失效了?于是我自己先试了一下. 环境:MySQL 5.7.25 1. 创建测试表 我先整了个32万 ...

  3. mysql unix时间加索引_【mysql】mysql时间字段怎么加索引

    查询时需要根据时间字段进行范围查询,timestamp类型.语句没有子查询.关联查询,只查这一张表. 查出5万条结果大约需要4.5秒,这个字段已经加了普通索引,但是explain的类型还是ALL. 怎 ...

  4. mysql哪些字段适合索引_(转)Mysql哪些字段适合建立索引

    简单梳理如下:1) 事务支持 MyISAM不支持事务,而InnoDB支持.InnoDB的AUTOCOMMIT默认是打开的,即每条SQL语句会默认被封装成一个事务,自动提交,这样会影响速度,所以最好是把 ...

  5. MySQL时间字段效率_MYSQL数据库时间字段INT,TIMESTAMP,DATETIME性能效率比较

    正 文: 在数据库设计的时候,我们经常会需要设计时间字段,在MYSQL中,时间字段可以使用int.timestamp.datetime三种类型来存储,那么这三种类型哪一种用来存储时间性能比较高,效率好 ...

  6. mysql 排序字段 添加索引吗_mysql需要在哪些字段上加索引?

    mysql需要加索引的字段:1.经常出现在Where子句中的字段,特别是大表的字段,应该建立索引:2.经常与其他表进行连接的表,在连接字段上应该建立索引:3.分组字段或者排序字段应该创建索引:4.选择 ...

  7. mysql——时间字段类型与C#中datetime

    一.引言 做项目的时候开始纠结于用2013-01-01 12-12-12存储还是用 2013-01-01存储,这个设计到的问题是mysql中时间字段的选择问题:date.time或者datetime: ...

  8. mysql添加字段uniquekey索引_MySQL数据库之mysql为字段添加和删除唯一性索引(unique) 的方法...

    本文主要向大家介绍了MySQL数据库之mysql为字段添加和删除唯一性索引(unique) 的方法 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 1.添加PRIMARY KEY ...

  9. mysql时间字段条件查询_mysql 查询 时间作为查询条件

    今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 昨天 SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ...

最新文章

  1. 从零开始学C++之继承(一):公有/私有/保护继承、overload/overwrite/override之间的区别...
  2. 树的计数(prufer序列 或 purfer序列)
  3. K-近邻算法(KNN)概述
  4. 很感人的爱情故事——世界上最遥远的距离
  5. axios 简单常用笔记
  6. hibernate映射(一对一、一对多、多对一、多对多)配置 【转】
  7. Python学习笔记之 高级变量类型 列表,元组,字典,字符串的相关常用 操作
  8. Git(5):使用git命令将本地项目上传到GitLab仓库中
  9. Hero传奇引擎47个疑难问题解答
  10. 佳顺通用进销存系统去广告_免费在线进销存软件弊端之重复投资
  11. 矩阵笔记1:矩阵分析(第三版)-史荣昌-第一章:线性空间和线性变换
  12. kazam使用_尝试使用2种免费的桌面录制工具:SimpleScreenRecorder和Kazam
  13. 泛型一般有三种使用方式
  14. 天空盒里放风筝,OpenGL就这么任性:想怎么放,就怎么放!
  15. 5年多工作经验,工资给15k,要是你,你会接受吗?
  16. stm32呼吸灯实验
  17. 查询一列不同值的数据 mysql_怎样查询两个表中同一字段的不同数据值
  18. 马克扎克伯格节俭_马克·扎克伯格的垃圾实在很难抢
  19. 打飞机游戏(Appinventor练习)
  20. SCRM是什么?CRM和SCRM有什么区别?

热门文章

  1. Android延迟执行的三种方式(转载)
  2. iphonex适配游戏_王者荣耀Iphone X出现问题怎么办_王者荣耀iPhoneX适配版本常见问题说明_游戏吧...
  3. 360环视AVM电路图,N4+AC8257NVP6324+AC8257方案
  4. 个人技能知识图谱——校园篇
  5. java和基岩版区别_我的世界基岩版与Java版有什么区别?
  6. 在阿里实习后,他的感悟
  7. 聊一聊tiktok上面的无人直播可行吗?
  8. 一文看懂虚拟机中Java对象的生死判别
  9. host key for (ip地址) has changed and you have requested strict checking
  10. 2020年的互联网公司年终奖,看看阿里、腾讯、百度都发多少