2016-01-05 38 views
0

我想要時間戳列中的時間部分。 例如如果load_ts = 2016-01-04 11:34:35,那麼我只需要11:34:35。我試過使用select concat(hour(load_ts),':',minute(load_ts),':',second(load_ts)) as note_time from rushisourcepart;,但它沒有給出正確的輸出。從配置單元中的時間戳獲取時間

請給出您的建議。

+0

你能具體談談 「正確的輸出」? – LiMuBei

+0

例如,如果load_ts = 2016-01-04 18:34:56,它給出的輸出爲18:18:18這與18:34:56不一樣。 –

回答

0

您可以使用substr(load_ts, 12)

hive> select substr('2016-01-04 11:34:35', 12); 
OK 
11:34:35 
+0

謝謝你的作品。但我沒有明白。爲什麼我們不會在這個字符串函數substr()中出錯?當我們嘗試使用concat()時出現錯誤。 –

+0

如果這個答案有效,而你的答案沒有,它看起來像列實際上被定義爲'string'而不是時間戳。如果沒有表格定義或錯誤,很難說,你應該發佈這樣的表達方式,以便人們獲得更好的幫助。 –