2 oracle conditional plsql cursor
我需要帮助.我在构建PL/SQL块时遇到问题.在游标中,我构建了一个查询,我想在游标上插入一个过滤器.以下是一个例子:
DECLARE
code NUMBER;
parameters_amb myOthertable%ROWTYPE;
CURSOR test is SELECT id from mytable
if parameters_amb.test2 is not null then
where mytable.name = 'NAMETABLE'
else
where mytable.name = 'NAMETABLE2';
Run Code Online (Sandbox Code Playgroud)
谁能协助我进行这种建设?
您可以使用参数化游标:
DECLARE
code NUMBER;
parameters_amb myOthertable%ROWTYPE;
param mytable.name%TYPE;
CURSOR test (p_name VARCHAR2) is
SELECT id
FROM mytable
WHERE mytable.name = p_name;
BEGIN
if parameters_amb.test2 is not null then
param := 'NAMETABLE'
else
param := 'NAMETABLE2';
end if;
OPEN test(param);
-- Add code to fetch and read from cursor
END;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
761 次 |
| 最近记录: |