【问题标题】:Select Timestamp By Time Ignoring Date按时间选择时间戳忽略日期
【发布时间】:2011-11-07 18:19:52
【问题描述】:

我正在尝试“选择”一个时间范围,而忽略“TIMESTAMP”字段的日期部分(09-09-11 10:23:03)。

下面的查询有效,但性能成本很高...

SELECT * FROM Table WHERE Time LIKE '10:09:13'

在不使用“LIKE”命令的情况下,在具有 1/2-1 百万行的表上执行此操作的最快方法是什么?

【问题讨论】:

    标签: mysql select time timestamp


    【解决方案1】:
    SELECT * FROM Table WHERE TIME(Time) = '10:09:13'
    

    应该可以的。

    【讨论】:

    • 哇,这比 LIKE 快得多。感谢您的快速回复。
    • LIKE 依赖于你的 TIMESTAMPVARCHAR 的隐式转换,这是昂贵的。此选项使用时间戳的自然类型,因此速度更快。
    猜你喜欢
    • 2016-03-15
    • 2018-01-25
    • 2013-10-22
    • 1970-01-01
    • 1970-01-01
    • 2022-07-08
    • 2015-08-02
    • 2014-01-09
    • 2014-08-27
    相关资源
    最近更新 更多