为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DM8.1
【操作系统】:LINUX
【CPU】:X86
【问题描述】*:sql程序for循环中,in里面的查询语句能否使用变量
变量打印
直接写sql语句是正常的,但是不方便维护,sql语句是根据需求变更的
推荐使用动态游标
dbms_output.enable;
DECLARE
aaa varchar(50);
tiaojian varchar(50):=' where idss=''010135067018''';
CURSOR c1;
BEGIN
OPEN C1 FOR 'select * from "UTAXDB"."TABLE_1" ' ||tiaojian ;
LOOP
FETCH c1 INTO aaa;
EXIT WHEN c1%NOTFOUND;
DBMS_OUTPUT.PUT_LINE(aaa || '的' );
END LOOP;
CLOSE c1;
END;
/
In里面可以直接写select语句;
FOR SESS_ID IN (SELECT SESS_ID FROM v$SESSIONS WHERE SQL_TEXT LIKE 'SELECT%')LOOP