2017-04-18 2 views
1

J'ai une valeur d'horodatage stockée sous forme de chaîne dans ma table créée dans hive, et je souhaite la convertir en type d'horodatage.Conversion d'une valeur d'horodatage d'une chaîne en une ruche d'horodatage

J'ai essayé le code suivant:

select date_value, FROM_UNIXTIME(UNIX_TIMESTAMP(date_value, 'dd-MMM-YY HH.mm.ss')) from sales limit 2; 

temps original et le résultat est le suivant:

Original time    result 

07-NOV-12 17.07.03  2012-01-01 17:07:03 
25-FEB-13 04.26.53  2012-12-30 04:26:53 

Qu'est-ce qui ne va pas dans mon script?

+0

Retirez l'image et ajouter du texte à la place –

+0

juste fait, merci – Cyrus

Répondre

1

aa au lieu de AA

select date_value 
     ,FROM_UNIXTIME(UNIX_TIMESTAMP(date_value, 'dd-MMM-yy HH.mm.ss')) as ts 

from sales 
; 

+--------------------+---------------------+ 
|  date_value  |   ts   | 
+--------------------+---------------------+ 
| 07-NOV-12 17.07.03 | 2012-11-07 17:07:03 | 
| 25-FEB-13 04.26.53 | 2013-02-25 04:26:53 | 
+--------------------+---------------------+ 
+0

merci, cela fonctionne, mais comment puis-je utiliser les données de colonne au lieu du tableau? – Cyrus

+0

C'était juste pour la démo. Voir mise à jour –

+0

Grande, merci encore, juste une chose de plus, comment convertir '11' en NOV même que l'heure d'origine? – Cyrus