2010-06-11 5 views
2

쉼표로 마침표 및 마침표로 쉼표를 바꾸는 방법. 예 : 오라클의 1.50.000,25에 1,50,000.25오라클은 쉼표로 마침표 및 마침표를 쉼표로 바꿉니다.

+0

데이터 수정 중입니까? 또는 로케일에 표시하기 위해 숫자 데이터의 형식을 지정하는 방법은 무엇입니까? 후자의 경우 일반적으로 응용 프로그램의 UI 레이어가 처리하도록하는 것이 좋습니다. – ThatBlairGuy

답변

2

당신이

예를 들어, 3 단계 프로세스에 tihs을 수행 할 수 있습니다 replace

사용 고유의 '안전'문자로 ','모든 스왑 (같은 ~) 다음

스왑 모든 '.' '~'마지막

스왑 모든 ','로에 '.'

+0

btw - 통화 인 경우 로케일 설정에서 다시 포맷해야합니다. - 이상은 일반적인 방법입니다. – Randy

+0

예. 대답했습니다. – Atul

4

숫자의 경우 이러한 문자 (그룹 구분 기호와 소수 구분 기호)는 NLS (전역 화) 매개 변수에 의해 제어됩니다. 기본값은 NLS_TERRITORY에 의해 정의되지만 우리는 NLS_NUMERIC_CHARACTERS 매개 변수를 통해 특정 문자보다 우선 할 수 있습니다

SQL> var n number 
SQL> exec :n := 1000000.123 

PL/SQL procedure successfully completed. 

SQL> select :n from dual 
    2/

     :N 
----------- 
1000000.123 

SQL> select to_char(:n, '9G999G999D999') from dual 
    2/

TO_CHAR(:N,'9G 
-------------- 
1,000,000.123 

SQL> alter session set nls_numeric_characters = ",." 
    2/

Session altered. 

SQL> select to_char(:n, '9G999G999D999') from dual 
    2/

TO_CHAR(:N,'9G 
-------------- 
1.000.000,123 

SQL> 

세계화 물건은 설명서에 광범위하게 적용됩니다. Find out more.

관련 문제