有人可以建議我怎麼可以用逗號分隔,而不使用TO_CHAR函數來顯示一個數字。 )用逗號分隔數字格式,在Oracle中沒有TO_CHAR
NUMBER 3455678.05應顯示爲3,455,678.05 NUMBER 3455678應顯示爲3455678
有人可以建議我怎麼可以用逗號分隔,而不使用TO_CHAR函數來顯示一個數字。 )用逗號分隔數字格式,在Oracle中沒有TO_CHAR
NUMBER 3455678.05應顯示爲3,455,678.05 NUMBER 3455678應顯示爲3455678
不使用TO_CHAR(,這是不可能的,除非它可以在客戶端程序來處理。
例如,在SQL * Plus,你可以這樣做:
set numformat 999,999,999,999,999.00
,但是這不是一個完整的例子,爲3455678.05將打印爲3,455,678.05,但是,3455678將打印爲3,455,678.00。
正確的解決辦法是使用TO_CHAR()函數,用設置NLS_TERRITORY和/或NLS_NUMERIC_CHARACTERS正確地格式化輸出一起。
希望有所幫助。
其實我認爲「正確的解決方案」是讓客戶端程序處理顯示問題,就像你用SQL * Plus例子展示的那樣。這是關於*分離的問題*。 – APC 2012-03-02 09:52:25
顯示格式化的東西應該在你的應用程序或表示層來完成,而不是通過SQL。
如果你堅持做下去,那麼馬克J. Bobak說,TO_CHAR是你唯一的選擇。
如果你不想或不能使用完美的工具來完成這項工作,你必須給出一個很好的理由。 – 2012-03-02 03:39:22