mysql日期用long_mysqltimestamp和long存储时间效率比较

本文通过实验对比了在MySQL中使用TIMESTAMP和LONG类型存储日期时间的效果。在全表扫描时,对于LONG类型,经过预处理转换后进行查询效率显著提升。而在使用索引的情况下,两种类型查询速度相当快。结论暗示了在适当预处理的情况下,LONG类型可能提供更好的性能。
摘要由CSDN通过智能技术生成

show create table 20130107date;

CREATE TABLE `20130107date` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`c_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,

`c_date_long` int(20) NOT NULL,

`idx_date` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',

`idx_date_long` int(11) NOT NULL,

PRIMARY KEY (`id`),

KEY `20130107date_idx_date` (`idx_date`),

KEY `20130107date_idx_long` (`idx_date_long`)

) ENGINE=InnoDB

里面有90w数据,都是随机的时间.

先看没有索引的全表扫描

1 :

select COUNT(*) from 20130107date

where c_date BETWEEN DATE('20110101') and DATE('20110102')

这个需要1.54s

2:

select COUNT(*) from 20130107date

where c_date_long BETWEEN UNIX_TIMESTAMP('20110101') and UNIX_TIMESTAMP('20110102'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值