PHP 在 SQL 语句中转换日期时间


PHP convert datetime in SQL statements

是否可以从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?