mysql时间字段使用索引_mysql 日期添加索引-程序员宅基地

技术标签: mysql  

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

首先创建一张表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

 

 这样就用到了时间索引

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

文章转载:原文链接

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/CSDN_LGY_Java/article/details/111594640

智能推荐

Quartz:ERROR threw an unhandled Exception-程序员宅基地

文章浏览阅读5.7k次。详细的错误信息如下: 1 2016-06-28 17:18:13.366 [DefaultQuartzScheduler_Worker-1] ERROR org.quartz.core.JobRunShell:211 - Job group1.job1 threw an unhandled Exception: 2 java.lang.NullPointerException 3..._threw an unhandled exception

查询全部学生的学号、姓名、性别和出身年月日-程序员宅基地

文章浏览阅读1.4k次。要查询全部学生的学号、姓名、性别和出身年月日,可以在学校的学生信息系统中查询,或者向学校的教务处或者学生处询问。如果你是学校的工作人员,可以通过相关的数据库或者 Excel 表格来查询这些信息。..._查询学生信息,包括学号、姓名和出生日期(通过身份证号截取得出)。

CS 学习笔记 - 关于页式虚拟存储器的地址映射的一些理解_页式映射-程序员宅基地

文章浏览阅读1.8k次,点赞6次,收藏17次。虚拟存储器映射图解图解详细解释 ????页式虚拟存储系统 ️页式虚拟存储系统中 虚拟地址空间会被划分为 等长大小的页,这个页被称为 逻辑页,我的理解就是 假设它存在, 假设我们有这么一块虚拟的空间, 这些空间被划分成一个个大小相同的页,关于这个页, 就只是一个划分的单位, 比如 我们可以说把一个 1G 的 虚拟存储空间划分为 4页, 那么每一页就是 256M , 我一开始很纠结这个页 ..._页式映射

内核调试番外篇 - KDB的介绍与简单使用_kdb是什么-程序员宅基地

文章浏览阅读8.1k次,点赞2次,收藏15次。From: 内核&调试调试内核调试番外篇 - KDB的介绍与简单使用1、什么是 KDB?kdb是一个Linux系统的内核调试器,它是由SGI公司开发的遵循GPL许可证的开放源码调试工具。kdb嵌入在Linux内核中,为内核&&驱动程序员提供调试手段。它适合于调试内核空间的程序代码,譬如进行设备驱动程序调试,内核模块的调试等。2、为什么要用KDB?Bug处处有,不同人的编码思维,以及架构思维!总是会_kdb是什么

redis的发布订阅_jedis的发布订阅-程序员宅基地

文章浏览阅读168次。Redis提供了发布订阅功能,可以用于消息的传输,Redis的发布订阅机制包括三个部分:发布者、订阅者和Channel。订阅消息 发布消息 这里返回的2表示接收到该消息的订阅者的数量为2: 再次发布消息: 这里返回的1表示接收到该消息的订阅者的数量为1: ..._jedis的发布订阅

逆天:蘑菇街下单平台演进,从PHP到Java-程序员宅基地

文章浏览阅读174次。本次分享的主题为:蘑菇街下单平台演进。主要介绍的内容是蘑菇街如何一步一步从PHP往Java服务化平台转化的过程。这次介绍的主要内容包括5个点:1、首先,我们需要看一下就是去年9月我刚到蘑菇街时,我所看到的下单系统。当时这个系统所面临的一个问题是什么?面对这些问题我们应该做如何的应对方案。2、其次,我们为什么要做系统拆分,整个服务化过程是怎么做的。...

随便推点

Qt之QWave音频波形显示控件_qt显示声音波形-程序员宅基地

文章浏览阅读3.9k次。QQ:609162385demo下载地址:https://download.csdn.net/download/cqltbe131421/10848376最近在做关于波形图显示的控件,自己写了一个音频波形显示的插件,实现功能如下:放大,缩小,截取,播放,暂停,放大后通过滚动条移动波形,点击波形图即可到当前点击位置进行播放,播放时间线,播放时时显示线,播放过程中,波形滚动显示,分单通道双..._qt显示声音波形

deno mysql_从 Node 到 Deno-程序员宅基地

文章浏览阅读156次。我收集了一些 Node 中最常用的主题,并寻找 Deno 的替代方案。首先我想说明,许多当前的 Node.js 模块都可以都可以用在 Deno 中。由于许多模块都是可重用的,所以没有必要为所有方法去寻找替代方案。你可以访问pika.dev 查找可以在 Deno 中使用的模块。Electron通过 Node.js,我们可以使用 Electron 创建桌面程序。 Electron 使用 Chromiu..._handler

[Win10] No implementation for org.apache.maven.model.path.PathTranslator was bound_no implementation for pathtranslator was bound.-程序员宅基地

文章浏览阅读3k次。IDEA执行Maven报错Unable to import maven project: See logs for detailsHelp -> Show Log in Explorer 查看详细的错误日志1) No implementation for org.apache.maven.model.path.PathTranslator was bound. while locating org.apache.maven.model.path.PathTranslator for _no implementation for pathtranslator was bound.

MySQL中的JSON数据类型 4 合并 JSON 值_json_merge_patch-程序员宅基地

文章浏览阅读2k次。MySQL 8.0.3(及更高版本)支持两种合并算法,由函数JSON_MERGE_PRESERVE()和JSON_MERGE_PATCH()实现。它们在处理重复键的方式上有所不同:JSON_MERGE_PRESERVE()保留重复键的值,而JSON_MERGE_PATCH()丢弃除最后一个值之外的所有值。接下来的几段将解释这两个函数中的每一个都如何处理 JSON 文档(即对象和数组)的不同组合的合并。注意JSON_MERGE_PRESERVE()与以前版本的MySQL(在MySQL..._json_merge_patch

9万张水果蔬菜分类图片数据集(100多类别)下载分享_果蔬数据集-程序员宅基地

文章浏览阅读9.8k次。9万张水果蔬菜分类图片数据集(100多类别)下载分享_果蔬数据集

Qt如何弄出tab竖着写。_qt tab-程序员宅基地

文章浏览阅读4.2k次。Qt 最近使用QTabwidget做不出想要的效果,竖着放,字是旋转九十度的。-----|widget-----|widget-----|widget转而使用QtListWidget和QstckedWidget一起,使用connect将两个的事件连接就可以了。那也只是可以完成横着的。程序|widget报警|widget日志|widget重点!在需要添加显示..._qt tab

推荐文章

热门文章

相关标签