MySql的新手,我正在尝试查询表格以获得某些小时和分钟,例如
5时00分00秒。一直在使用以下,但只到05:00:00,但需要05和11小时......
SELECT * FROM `UMHMwind`
WHERE Hour(`dt`) = "05,11" AND MINUTE(`dt`) = "0".
可能是一个简单的解决方案,但无法在网上找到任何有用的信息。
答案 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 ...
... where HOUR(dt) in (5, 11) ...
第二个是短手,所以我建议。