我在datetime
专栏中选择了某个日期的记录,但感觉有点sl,,而且我想知道是否有更好的方法。我的查询是这样的:选择具有特定日期的所有记录:更简单的方法?
SELECT *
FROM myTable
WHERE event_datetime
BETWEEN '2012-05-05 00:00:00' AND '2012-05-05 23:59:59'
它工作正常。我只是想知道是否有更好的方法在mySQL中做到这一点。
我在datetime
专栏中选择了某个日期的记录,但感觉有点sl,,而且我想知道是否有更好的方法。我的查询是这样的:选择具有特定日期的所有记录:更简单的方法?
SELECT *
FROM myTable
WHERE event_datetime
BETWEEN '2012-05-05 00:00:00' AND '2012-05-05 23:59:59'
它工作正常。我只是想知道是否有更好的方法在mySQL中做到这一点。
从什么角度更好?我们建议使用DATE(event_datetime) = '2012-05-05'
,但效率非常低。
所以继续使用您的解决方案,并确保event_datetime
列由指数
覆盖你可以做WHERE date(event_datetime) = '2012-05-05'
,但这种方式不能event_datetime
使用索引,所以如果你想使用的event_datetime
索引,使用你原来的办法。
其索引... - 我不知道DATE()函数,但它显然不是一个很好的选择使用它。谢谢 :) – Will