2010-03-02 8 views
42

J'ai un horodatage de type UNIX stocké dans une colonne INT dans MySQL. Quelle est la bonne façon de récupérer cela en tant que MySQL DATETIME?MySQL: Convertir INT en DATETIME

(j'ai trouvé la réponse lors d'une nouvelle numérisation des fonctions de date MySQL, mais n'a pas vu la réponse sur le SO. Figured il devrait être ici.)

Répondre

14
SELECT FROM_UNIXTIME(mycolumn) 
FROM mytable 
21
select from_unixtime(column,'%Y-%m-%d') from myTable; 
+0

ahhhh ... mais le temps :) Parfois, nous le voulons, y compris comme indiqué par OP –

0

La fonction STR_TO_DATE(COLUMN, '%input_format') peut le faire, il vous suffit de spécifier le format d'entrée. Exemple: pour convertir p052011

SELECT STR_TO_DATE('p052011','p%m%Y') FROM your_table; 

Le résultat: 2011-05-00