오라클 9i XMLAGG 0 1 1,401

by it힘드네용 [PL/SQL] xmlAGG PL/SQL [2019.10.17 21:25:15]


안녕하세요.

오라클 버전은 9I입니다.

쿼리는 조회가 잘되는데요.

프로시저에서 XMLAGG 함수 사용해서 컴파일할려고하면 에러 납니다.

오라클 버전 10G에서는 잘되고요.

 

에러 쿼리 부분

SELECT(REPLACE(REPLACE(REPLACE(REPLACE(SUBSTR(EXTRACTVALUE(XMLELEMENT(a,XMLAGG(XMLELEMENT(a,' ',TR) ORDER BY TR DESC).EXTRACT('//text()')),'//text()'),2),'>,<','><'),' ',''),'***','<td align="right" rowspan='||count(*)),'<tdalign','<td align')) AS TR

오류 내용 : 828 : PLS-00306 : WRONG NUMBER OR TYPES OF ARGUMENTS IN CALL TO 'XMLAGG'

               828 : PL/SQL:ORA-00904:"XMLAGG":invalid identifier

               655 : PL/SQL: SQL Statement ignored

             

by jkson [2019.10.18 10:31:48]

예전에 저도 그런적이 있는데.. 그냥 다이나믹 쿼리로 변경했습니다. 클라이언트 오라클버전이 낮으면 프로시저 빌드시에 구문을 클라이언트 버전으로 체크하는 듯한 느낌이 들더라고요. 툴은 TOAD였고요.

음.. 그런데 XMLAGG는 9i에서 되는 함수인데..;

요기 참고해보세요.

https://www.experts-exchange.com/questions/21737249/Using-xmlagg-in-a-function-select-statement.html

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입