96

テーブルにDATETIMEフィールドを格納してい ます。各値は次のようになります: 2012-09-09 06:57:12

私はこの構文を使用しています:

   date("Y-m-d H:i:s");

ここで私の質問は、データをフェッチしているときに、単一の MySQL クエリを使用して、日付と時刻の両方を別々に取得するにはどうすればよいですか?

2012-09-09のような日付と06:57:12のような時間。

4

6 に答える 6

148

DATE_FORMAT()を使用してそれを実現できます(他の形式についてはリンクをクリックしてください) 。

SELECT DATE_FORMAT(colName, '%Y-%m-%d') DATEONLY, 
       DATE_FORMAT(colName,'%H:%i:%s') TIMEONLY

SQLFiddle デモ

于 2012-09-09T07:14:31.087 に答える
57

mysqlのドキュメントによると、DATE()関数は日時フィールドの日付部分をプルし、時間部分はTIME()をプルします。だから私は試してみます:

select DATE(dateTimeField) as Date, TIME(dateTimeField) as Time, col2, col3, FROM Table1 ...
于 2012-09-09T07:18:11.867 に答える
18

試す:

SELECT DATE(`date_time_field`) AS date_part, TIME(`date_time_field`) AS time_part FROM `your_table`
于 2012-09-09T07:15:28.197 に答える
-2

デート専用
date("Y-m-d");

そして時間のみの使用
date("H:i:s");

于 2013-12-06T06:42:29.437 に答える