2017-11-20 17 views
1

에서 아랍어 영어에서 숫자를 변환하는 방법은 테이블이 english number 같은 데이터와 내가이 데이터를 선택할 필요가 있지만 내가 그것을 같이해야이에서 수를 변환하는 방법을 arabic number 영어 아랍어번호를 선택하고 오라클

답변

2

SQL Fiddle

오라클 11g R2 스키마 설정에 :

CREATE FUNCTION numToEasternArabic(
    in_value IN NUMBER 
) RETURN NVARCHAR2 DETERMINISTIC 
IS 
    p_num VARCHAR2(100) := TO_CHAR(in_value); 
    p_char CHAR(1); 
    o_str NVARCHAR2(100); 
BEGIN 
    FOR i IN 1 .. LENGTH(p_num) LOOP 
    p_char := SUBSTR(p_num, i, 1); 
    o_str := o_str 
      || CASE p_char 
      WHEN '.' 
      THEN N'.' 
      ELSE UNISTR(
        '\' || TO_CHAR(
          TO_NUMBER(p_char) + 660, 
          'FM0000' 
          ) 
       ) 
      END; 
    END LOOP; 
    RETURN o_str; 
END; 
/
,363,210

검색어 1 :

SELECT numToEasternArabic(1438) 
FROM DUAL 

Results :

| NUMTOEASTERNARABIC(1438) | 
|--------------------------| 
|      ١٤٣٨ |