顯示()沒有顯示正確微秒

使用顯示()來顯示時間戳值與微秒級精度。顯示()是毫秒精度有限。

寫的harikrishnan.kunhumveettil

去年發表在:2022年5月16日

問題

你想要顯示一個時間戳值以微秒級精度,但是當你使用顯示()它不顯示值過去毫秒。

例如,Apache火花SQL顯示()命令:

% sql顯示(火花。sql(“選擇演員(2021 - 08 - 10 t09:08:56.740436的時間戳)作為測試”))

返回一個截斷值:

2021 - 08 - 10 - t09:08:56.740 + 0000

導致

DataFrame被轉換為HTML內部之前輸出呈現。

這限製了結果顯示毫秒精度。

它不會影響存儲值。

解決方案

你應該使用顯示()而不是使用顯示()

例如,Apache火花SQL顯示()命令:

% sql火花。sql(“選擇演員(2021 - 08 - 10 t09:08:56.740436的時間戳)作為測試”),告訴(截斷= False)

返回正確的值:

2021-08-10 09:08:56.740436

作為一種替代方法,您可以創建一個第二列和列的值作為字符串拷貝。

後轉換為一個字符串,顯示()顯示的全部價值。

這篇文章有用嗎?