Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Oracle sql dinâmico avalia expressão na cláusula where


A sintaxe de espaço reservado é para passar valores a serem verificados quando a instrução for executada. O uso esperado é algo assim:
DECLARE
    v_out_1     varchar2(32);
    v_out_2     varchar2(32);
    plsql_block VARCHAR2(500);

BEGIN
    plsql_block := 'SELECT column FROM mytable WHERE filter_column = :a';

    EXECUTE IMMEDIATE plsql_block INTO v_out_1 USING 'some value';

    EXECUTE IMMEDIATE plsql_block INTO v_out_2 USING 'another value';
END;
/