2013-08-06 2 views
0

Oracle의 XML 열에서 값을 추출하려고합니다. 내 쿼리는 다음과 같습니다 :Oracle extractValue 함수가 작동하지 않습니다.

select extractValue(COLUMN_NAME, '/parent/element1/') 
from TABLE_NAME where id = 111111; 

그러나, 나는 내 SQL Developer에서 아래 오류 :

ORA-00932 : 일치하지 않는 데이터 유형을 : 예상 - 가지고 - 00932. 00000 - "일관성없는 데이터 유형 :

  1. : 예상 % s은 (는) %의 "

추가 정보를 가지고 내가 쿼리에 노력하고 columnn 유형은 다음과 같습니다 VARCHAR2 (2000 BYTE) 열의

  • 는 XML의 내용은 매우 간단합니다, 코드 조각은 다음과 같습니다 :
  • <parent> 
        <element1>value</element1> 
        <element2>value</element2> 
        <element3>value</element3> 
    </parent> 
    

    답변

    0

    ExtractValue 기능은 할 수 XML 데이터 유형에서 호출 될 수 있습니다. XMLTYPE 함수를 사용하여 VARCHAR2를 XML 유형으로 변환 해보십시오.

    select extractValue(XMLTYPE(COLUMN_NAME), '/parent/element1/') 
    from TABLE_NAME where id = 111111; 
    
    관련 문제