我正在表中存储一个DATETIME
字段。每个值看起来像这样:
2012-09-09 06:57:12
我使用的语法是:
date("Y-m-d H:i:s");
现在我的问题是,在获取数据时,如何使用单个MySQL查询分别获取日期和时间?
日期类似"2012-09-09";时间像"06:57:12";。
您可以使用DATE_FORMAT()(单击链接获取更多其他格式)
SELECT DATE_FORMAT(colName, '%Y-%m-%d') DATEONLY,
DATE_FORMAT(colName,'%H:%i:%s') TIMEONLY
SQLFiddle演示
根据MySQL文档,DATE()
函数将提取日期时间字段的日期部分,TIME()
将提取时间部分。
所以我会尝试以下方法:
SELECT DATE(dateTimeField) as Date,
TIME(dateTimeField) as Time
FROM Table1;
尝试:
SELECT DATE(`date_time_field`) AS date_part, TIME(`date_time_field`) AS time_part FROM `your_table`
简单地说,
SELECT TIME(column_name),DATE(column-name)
一个简单的方法是:
日期:
SELECT DATE(datetime_column) as mydate
时间:
SELECT TIME(datetime_column) as mytime
仅供日期使用date("Y-m-d");
仅供时间使用date("H:i:s");