MySQL查询某些小时

时间:2014-07-13 03:47:26

标签: mysql search

MySql的新手,我正在尝试查询表格以获得某些小时和分钟,例如

5时00分00秒。一直在使用以下,但只到05:00:00,但需要05和11小时......

SELECT *  FROM `UMHMwind` 
WHERE Hour(`dt`) = "05,11" AND MINUTE(`dt`) = "0". 

可能是一个简单的解决方案,但无法在网上找到任何有用的信息。

3 个答案:

答案 0 :(得分:2)

要指定值列表,请使用IN clause

SELECT *  FROM `UMHMwind` 
WHERE HOUR(`dt`) IN (5, 11) AND MINUTE(`dt`) = 0 

请注意,在日期周围使用函数时,不会使用索引。

文档是你的朋友。

答案 1 :(得分:1)

正确的语法是:

SELECT *
FROM UMHMwind
WHERE Hour(dt) IN (5, 11) AND MINUTE(dt) = 0

请注意hour()minute()函数返回整数,因此您应该将结果与整数进行比较。

答案 2 :(得分:0)

您想检查一个值是否等于另一个(我的意思是小时数):您可以使用:

  • = 运营商

... where HOUR(dt) = 5 or HOUR(dt) = 11 ...

  • IN 运算符

... where HOUR(dt) in (5, 11) ...

第二个是短手,所以我建议。