Как отделить ДАТУ и ВРЕМЯ от ДАТЫ и ВРЕМЕНИ в MySQL


Я сохраняю поле ДАТА-ВРЕМЯ в таблице. После сохранения значения его приходят как 2012-09-09 06:57:12 .

Для хранения я использую синтаксис:

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

Теперь мой вопрос заключается в том, чтобы при извлечении данных, как можно разделить дату и время , используя один запрос MySQL.

Дата, подобная 2012-09-09 и время, как 06:57:12.

Author: msh210, 2012-09-09

4 answers

Вы можете добиться этого с помощью ФОРМАТ ДАТЫ() ( нажмите на ссылку для получения дополнительной информации о других форматах)

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

Демонстрация SQLFiddle

 107
Author: John Woo, 2012-09-09 07:14:31

Согласно документации mysql, функция DATE() будет извлекать часть даты поля datetime, а функция TIME() - часть времени. поэтому я бы попробовал:

select DATE(dateTimeFeild) as Date, TIME(dateTimeFeild) as Time, col2, col3, FROM Table1 ...
 33
Author: Frank Thomas, 2012-09-09 07:18:11

Попробуйте:

SELECT DATE(`date_time_field`) AS date_part, TIME(`date_time_field`) AS time_part FROM `your_table`
 13
Author: Sudhir Bastakoti, 2012-09-09 07:15:28

Только для использования с датой
date("Y-m-d");

И только для использования во времени
date("H:i:s");

 -3
Author: Swapnil, 2013-12-06 07:07:42