Tengo una columna string
que actúa como date
y quiero seleccionarlo como date
.cómo convertir una cadena a la fecha en mysql?
¿Es posible?
Mi formato de datos de muestra sería; month/day/year
->12/31/2011
Tengo una columna string
que actúa como date
y quiero seleccionarlo como date
.cómo convertir una cadena a la fecha en mysql?
¿Es posible?
Mi formato de datos de muestra sería; month/day/year
->12/31/2011
Como se le dijo que aquí MySQL Using a string column with date text as a date field, puede hacerlo
SELECT STR_TO_DATE(yourdatefield, '%m/%d/%Y')
FROM yourtable
También puede manejar estas cadenas de fecha en las cláusulas WHERE. Por ejemplo
SELECT whatever
FROM yourtable
WHERE STR_TO_DATE(yourdatefield, '%m/%d/%Y') > CURDATE() - INTERVAL 7 DAYS
Puede gestionar todo tipo de diseños de fecha/hora de esta manera. Por favor refiérase a los especificadores de formato para la función DATE_FORMAT()
para ver lo que puede poner en el segundo parámetro a STR_TO_DATE()
http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-format
STR_TO_DATE('12/31/2011', '%m/%d/%Y')
Cuál es la fecha se almacena como formato DD/MM/AAAA como 31/11/1015? –
@VipulHadiya cambie la cadena de formato de fecha a '% d /% m /% Y' como 'STR_TO_DATE ('31/11/1015', '% d /% m /% Y')' Tenga en cuenta que la salida estar en formato 'AAAA-MM-DD' como tipo de datos 'FECHA'. – fyrye
http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html
utilizar la página anterior para referirse más funciones en MySQL
SELECT STR_TO_DATE(StringColumn, '%d-%b-%y')
FROM table
decir, por ejemplo, utilice la consulta a continuación para obtener la salida
SELECT STR_TO_DATE('23-feb-14', '%d-%b-%y') FROM table
Para el formato de cadena utilizan el siguiente enlace
http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-format
de otro dos ejemplos aquí.
Para emitir el día, el mes y el año, puede utilizar:
select STR_TO_DATE('14/02/2015', '%d/%m/%Y');
que produce:
2015-02-14
Para emite también el momento , puede usar:
select STR_TO_DATE('14/02/2017 23:38:12', '%d/%m/%Y %T');
que produce:
2017-02-14 23:38:12
Creo que debería ser INTERVALO 7 DÍAS en lugar de DÍAS –
Tengo una columna como el formato "dd-mmm-aaaa". ¿Cómo consulto el formato "dd-mm-aaaa"? – MAX