Tengo una string
columna que actúa como date
ay quiero seleccionarla como a date
.
¿Es posible?
Mi formato de datos de muestra sería; month/day/year
->12/31/2011
Como se dijo en MySQL, puede usar una columna de cadena con texto de fecha como campo de fecha .
SELECT STR_TO_DATE(yourdatefield, '%m/%d/%Y')
FROM yourtable
También puede manejar estas cadenas de fecha en WHERE
cláusulas. Por ejemplo
SELECT whatever
FROM yourtable
WHERE STR_TO_DATE(yourdatefield, '%m/%d/%Y') > CURDATE() - INTERVAL 7 DAY
Puede manejar todo tipo de diseños de fecha / hora de esta manera. Consulte los especificadores de formato de la DATE_FORMAT()
función para ver qué puede poner en el segundo parámetro de STR_TO_DATE()
.
fuente
%d/%m/%Y
gusta, asíSTR_TO_DATE('31/11/1015', '%d/%m/%Y')
que ten en cuenta que la salida tendrá elYYYY-MM-DD
formato de unDATE
tipo de datos.http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html
use la página anterior para consultar más funciones en MySQL
por ejemplo, use la consulta a continuación para obtener salida
Para el formato de cadena, use el siguiente enlace
http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-format
fuente
Aquí hay otros dos ejemplos.
Para generar el día, mes y año, puede usar:
Que produce:
Para generar también el tiempo, puede usar:
Que produce:
fuente