我能够查询逗号分隔IN参数在PLSQL到目前为止参照Query with comma seperated IN parameters in PLSQL。和完美的工作。我的问题如何为至少3个逗号分隔的参数实现这个相同的解决方案。我的查询参数是这样的,逗号分隔查询PLSQL中的多个参数
I_PRODUCT query (R%, L%)
I_MODEL query (E%,T%,R%)
I_TYPE query (A5,B%,C%)
作为函数调用并调用所有这些参数是否很好?其他快速解决方案?
create or replace PROCEDURE RQUERY1
(
I_PRODUCT VARCHAR2
I_MODEL VARCHAR2
I_TYPE VARCHAR2
, O_Cursor OUT SYS_REFCURSOR
) AS BEGIN
O_Cursor := NULL;
OPEN O_Cursor FOR
WITH PROD_SEARCH AS
(
select regexp_substr(I_PRODUCT,'[^,]+', 1, level) pattern from dual
connect by regexp_substr(I_PRODUCT, '[^,]+', 1, level) is not null
)
SELECT * FROM table1
WHERE EXISTS (SELECT NULL FROM PROD_SEARCH WHERE table1.PRODUCT LIKE pattern);
END RQUERY1 ;
更新:我期待使用存储过程从我的Java代码查询参数(I_PRODUCT,I_MODEL,I_TYPE)和需要显示输出值。
更新我的问题象下面这样:我希望使用存储过程从我的java代码中查询参数(I_PRODUCT,I_MODEL,I_TYPE),并需要显示输出值。 – SamK
@KodS我*认为*我明白你想要什么。编辑答案。 –
谢谢,这正是我正在寻找的 – SamK