首页 > 解决方案 > 不正确的日期时间值“2019-06%” - 查询有效,但有警告

问题描述

WHERE theDate LIKE '2019-06%'

是否有任何“正确”的方式来运行这样的查询,还是我必须先拆分字符串?在这种情况下,如果我将年份和月份作为单独的字符串,那么执行查询的正确方法是什么。我读到使用 MONTH 和 YEAR 不是最佳选择?

标签: mysql

解决方案


当您正确设置索引(比 LIKE 快,比 MONTH、YEAR 快)时,最快的查询将是

WHERE thedate BETWEEN '2019-06-01' AND '2019-06-30'.

我不确定边界是包括还是排除,也许边界将是最后五月和/或七月一号。


推荐阅读