Oracle 动态sql with pivot子句中出错
我无法找出此plsql块的问题:Oracle 动态sql with pivot子句中出错,oracle,plsql,sys-refcursor,Oracle,Plsql,Sys Refcursor,我无法找出此plsql块的问题: 1 declare 2 l sys_refcursor; 3 v varchar2(2000); 4 begin 5 v := q'[ 6 select * from ( 7 select etudiant2.nom, etudiant2.prenom, forme ||''||session_e formesession, note 8 from etudiant2 9 ) 10 pivot 11 (sum(null) for f
1 declare
2 l sys_refcursor;
3 v varchar2(2000);
4 begin
5 v := q'[
6 select * from (
7 select etudiant2.nom, etudiant2.prenom, forme ||''||session_e formesession, note
8 from etudiant2
9 )
10 pivot
11 (sum(null) for formesession in ('TP01', 'TP02', 'TP03', 'TD01', 'TD02'))]';
12 execute immediate v into l;
13* end;
SQL> /
declare
*
ERROR at line 1:
ORA-00932: inconsistent datatypes: expected - got -
ORA-06512: at line 12
这里有什么问题,我尝试了很多东西。。。也许“PIVOT”不适用于动态sql?我认为PIVOT子句与您所遇到的错误无关。要使用包含SELECT语句的字符串打开SYS_REFCURSOR,我认为您需要使用
OPEN L FOR V;
而不是
execute immediate v into l;
分享和享受