mysql date_format 效率_如何在where子句中优化mysql date_format()以提高速度?

我试图优化相对较大的MySQL(myisam)表220,000行。桌子本身并不大 - 大小约为23.5MB。那么,真正的问题是什么? - 我有这样的查询:如何在where子句中优化mysql date_format()以提高速度?

SELECT * FROM table WHERE DATE_FORMAT(date_field, '%m%d') = '1128' LIMIT 10

我试图设置DATE_FIELD的指数,而是要解释表明,该指数不使用在所有...我想这是因为DATE_FORMAT不那么陌生()。所以,我打算添加另一列,将日期保存为'%m%d'并在其上放置索引。我不想做这件事的唯一原因是因为数据重复。

顺便说一句我用DATE_FIELD是一个出生日期字段,我敢肯定,我总是需要DATE_FIELD为%Y-%间%d或刚刚%M%d

你对如何优化查询更好的建议以上 ?提前致谢 !!!

一些信息:

MySQL的版本:在996.783Mhz

RAM奔腾III(Coppermine的):512MB DDR

硬盘:80GB SATA 5.0.51b日志

OS:Slackware的12.1

CPU

PS我试图添加保存日期为%米%d另一列。结果非常好,但我仍然不喜欢这种方法。我在等待更多建议!

2009-08-19

plamen


版权声明:本文为weixin_35801916原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。