我怎样才能用BETWEEN运算符选择存储为varchar的日期(格式:“2012.04”)?查询varchar日期与之间
我需要在此字段上选择一年的时间间隔。
现在我这个尝试,但是这给我的MySQL语法错误:
SELECT DISTINCT monthcol
FROM bo_alerts
WHERE STR_TO_DATE(monthcol , '%Y.%m') BETWEEN
(STR_TO_DATE('2012.04', '%Y.%m') AND STR_TO_DATE('2011.03', '%Y.%m'))
ORDER BY monthcol DESC
的日期现在静态的(用于测试),但我需要在之间,从而计算第二值它将在BETWEEN部分的第一个值精确到-1年。
非常感谢!
好吧,我发现了语法错误的解决方案:不需要值之间的括号。但它仍然不会给我任何值... – VORiAND 2012-04-18 09:04:40
切换参数日期。需求之间的第一个表达式小于第二个表达式。而且,如果您将日期存储为变量,则不必将它们转换回日期。比较仍然有效:'monthcol在'2011.03'和'2012.04'之间)' – 2012-04-18 09:07:51