我的m / d / y的mysql日期格式为2015年3月12日03/12/2015的varchar。现在我想要计算mysql表中所有结果的月份和时间。年份与今天的日期相同。
我正在使用以下查询,但没有成功
SELECT * FROM student where DATE_FORMAT(regd_date,'%m/%y')=DATE_FORMAT(now(),'%m/%y')"
感谢您的帮助
答案 0 :(得分:2)
在使用varchar
之前,您首先需要使用STR_TO_DATE()
将date
列转换为DATE_FORMAT()
。
SELECT * FROM student
WHERE DATE_FORMAT(STR_TO_DATE(regd_date, '%m/%d/%Y'),'%m/%y') = DATE_FORMAT(now(),'%m/%y')
相应地调整STR_TO_DATE()
的格式。
注意:我不鼓励将日期存储为varchars。