datetime timestamp查询性能咨询

pengxn 2014-08-12 03:08:56
各位好:
有一个表,里面分别有2个时间类型的字段。
test_time | timestamp | NO | MUL | 0000-00-00 00:00:00 |
date_time | datetime | YES | MUL | 0000-00-00 00:00:00 |

分别建立了索引,可是查询的时候性能差别很大,求解释求优化

mysql> select count(1) from log_records_test where test_time between '2013/03/03 00:00:00' and '2014/08/08 00:00:00';
+----------+
| count(1) |
+----------+
| 544206 |
+----------+
1 row in set (0.97 sec)
----------------------------------------------------------------------------------------------------------------------------------------
mysql> select count(1) from log_records_test where date_time between '2013/03/03 00:00:00' and '2014/08/08 00:00:00';
+----------+
| count(1) |
+----------+
| 544206 |
+----------+
1 row in set (0.57 sec)
...全文
151 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
码无边 2014-08-13
  • 打赏
  • 举报
回复
你这个差距是很小,应该和性能没有太大的关系吧。
ACMAIN_CHM 2014-08-12
  • 打赏
  • 举报
回复
理论上差别非常小。建议楼主检查一下执行计划然后再分析下结论。 explain select ...
benluobo 2014-08-12
  • 打赏
  • 举报
回复
timestamp 存储了包括时间在内的部分 datetime 只存储了日期 datetime 比 timestamp 需要的字节少很多 所以扫描起来当然要比timestamp快
pengxn 2014-08-12
  • 打赏
  • 举报
回复
自己帮顶一下

56,687

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧