使用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小時為單位的時間值。