使用to_timestamp()解析後經時間(PM)將返回null

當使用to_timestamp()將12小時時間轉換為24小時時間時,hours變量必須為小寫。

寫的chetan.kardekar

最後發布時間:2022年7月22日

問題

您試圖解析一個12小時(AM/PM)的時間值to_timestamp (),但它返回的不是一個24小時的時間值,而是null。

例如,以下示例代碼:

%sql SELECT to_timestamp('2016-12-31 10:12:00 PM', 'yyyy-MM-dd HH:mm:ss a');

運行時返回null:

導致

to_timestamp ()要求小時格式為小寫。

如果時間格式用大寫字母表示,to_timestamp ()返回null。

解決方案

請確保使用小寫字母指定小時格式。

例如,以下示例代碼:

%sql SELECT to_timestamp('2016-12-31 10:12:00 PM', 'yyyy-MM-dd hh:mm:ss a');

返回24小時時間值的時間。