如何在Method_4中设置动态参数?

时间:2019-05-25 13:35:38

标签: oracle plsql oracle11g oracle-apex-5.1

我正在使用Oracle Method_4来使用动态查询,并且我想设置动态参数。

许多用户在运行时设置参数。

像这样:

select * from table(method4.dynamic_query(
q'[
    select replace(
        q'!
            select '#TABLE_NAME#' table_name, count(*) a from #TABLE_NAME# 
                where id = &Parameteres
        !', '#TABLE_NAME#', table_name) sql_statement
    from user_tables
    where table_name like 'TEST%'
]'
));

我的问题是:

如果用户设置了param_1,则:

select * from tb_1 
where col_1 = &param_1 

如果用户设置了param_2,则:

select * from tb_1 
where nvl(&param_2,col_2) = col_2

如果用户设置了param_1,param_2,则:

select * from tb_1 
where col_1 = &param_1 
and nvl(&param_2,col_2) = col_2

喜欢使用动态where子句执行查询。

我该怎么做?

0 个答案:

没有答案