mysql使用有效時間索引


借鑒自https://www.cnblogs.com/java-spring/p/12120974.html,劈天造陸大佬。

 

mysql建表

CREATE TABLE `t_test` (
  `id` int(20) NOT NULL AUTO_INCREMENT,
 
  `trade_date` varchar(20) DEFAULT NULL COMMENT'日期',
  PRIMARY KEY (`id`) USING BTREE,
    KEY `date` (`trade_date`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT;

索引

 

 

 

批量插入數據

兩個時間函數測試

1、DATE_FORMAT

EXPLAIN SELECT * FROM t_test WHERE DATE_FORMAT(t_date,"%Y-%m-%d") >= '2021-12-30';

 

 未使用日期索引

 

2、str_to_date

EXPLAIN SELECT * FROM t_test WHERE t_date >= str_to_date('2021-12-30', '%Y-%m-%d');

 

 

 使用到索引


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM