是否可以从SQL语句转换日期时间?
例:
SELECT * FROM t_status WHERE Function to Convert(date_added) BETWEEN '2013-05-01' AND '2013-05-31'
我在表格中的日期时间格式t_status这样的:
2013-05-20, 18:00 <-- 包含时间。
有什么建议吗?
您可以使用
STR_TO_DATE
函数在MySQL中将字符串转换为日期。
示例中的日期(假设逗号是有意的(可以使用格式字符串进行转换'%Y-%m-%d, %H:%i'
:
WHERE STR_TO_DATE(date_added, '%Y-%m-%d, %H:%i') BETWEEN '2013-05-01' AND '2013-05-31'
或者要忽略时间部分,请执行以下操作:
WHERE STR_TO_DATE(date_added, '%Y-%m-%d') BETWEEN '2013-05-01' AND '2013-05-31'
WHERE DATE(date_added) BETWEEN '2013-05-01' AND '2013-05-31'
从手册 - DATE(expr(:提取日期或日期时间表达式 expr 的日期部分。
下次请尝试先搜索Stackoverflow,因为已经有很多关于这个问题的问题 - https://stackoverflow.com/search?q=mysql+select+date+from+datetime
例如。
日期时间 mySQL 仅选择日期
如何从日期时间列中选择日期?
如何在 mysql 中将 DATETIME 转换为 DATE?