Estoy almacenando un campo DATETIME en una tabla. Cada valor se parece a esto: 2012-09-09 06:57:12 .
Estoy usando esta sintaxis:
date("Y-m-d H:i:s");
Ahora, mi pregunta es, mientras obtengo los datos, ¿cómo puedo obtener la fecha y la hora por separado , usando una única consulta MySQL?
Fecha como 2012-09-09 y hora como 06:57:12 .
DATE_FORMAT
y noDATE
yTIME
porque le dará la fecha predeterminada si está buscando la hora y la hora predeterminada si está buscando la fecha, vea mi respuesta a continuación.Respuestas:
Puede lograrlo usando DATE_FORMAT () ( haga clic en el enlace para ver más formatos )
SELECT DATE_FORMAT(colName, '%Y-%m-%d') DATEONLY, DATE_FORMAT(colName,'%H:%i:%s') TIMEONLY
Demostración de SQLFiddle
fuente
echo DATEONLY
para imprimir la fecha yecho TIMEONLY
para imprimir la hora? ¿¿O que??según la documentación de mysql, la función DATE () extraerá la parte de la fecha de un campo de fecha y hora, y TIME () para la parte de la hora. así que intentaría:
select DATE(dateTimeFeild) as Date, TIME(dateTimeFeild) as Time, col2, col3, FROM Table1 ...
fuente
Tratar:
SELECT DATE(`date_time_field`) AS date_part, TIME(`date_time_field`) AS time_part FROM `your_table`
fuente
DATE
yTIME
solo como lo que el usuario está pidiendo. Dará la fecha y la hora completas con sus valores predeterminados. VENDE ESTE ENLACESeptember, 09 2012 00:00:00-0400
para FECHA yJanuary, 01 1970 03:20:38-0500
de TIEMPODATE_FORMAT()
te hace más flexible.Simplemente,
SELECCIONE HORA (nombre_columna), FECHA (nombre_columna)
fuente
DATE
?Solo para uso de fecha
date("Y-m-d");
y solo para uso de tiempo
date("H:i:s");
fuente