Sql 从函数调用存储过程

Sql 从函数调用存储过程,sql,function,stored-procedures,db2,return-value,Sql,Function,Stored Procedures,Db2,Return Value,我有以下存储过程: CREATE OR REPLACE PROCEDURE SEARCH_SELECT (IN searchKey varchar(30), OUT id INT, OUT cmd VARCHAR(1024), OUT attr CHAR(10)) LANGUAGE SQL READS SQL DATA DYNAMIC RESULT SETS 1 BEGIN DECLARE result_set_1 CURSOR WITH RETURN TO CLIENT F

我有以下存储过程:

CREATE OR REPLACE PROCEDURE SEARCH_SELECT (IN searchKey varchar(30), OUT id INT, OUT cmd VARCHAR(1024), OUT attr CHAR(10))

LANGUAGE SQL
READS SQL DATA 
    DYNAMIC RESULT SETS 1
BEGIN
    DECLARE result_set_1 CURSOR WITH RETURN TO CLIENT FOR
        SELECT id, cmd, attr FROM test.commandtbl c WHERE c.attr = searchKey;   
    OPEN result_set_1;
END!
我想从以下函数调用它:

CREATE OR REPLACE FUNCTION select_selector (param VARCHAR(3))
RETURNS TABLE (id INT, CMD VARCHAR(1024), ATTR CHAR(10))
LANGUAGE SQL 
READS SQL DATA 

EXTERNAL ACTION 
BEGIN

  call SEARCH_SELECT(param);

 END!
原因是我需要像调用函数那样调用一个表,比如

select * from table(select_selector('a'))
而不是像一个程序

call SEARCH_SELECT('a')
我怎样才能让它工作呢


这里的问题是如何使用函数中的参数调用存储过程,并获得与存储过程返回的结果相同的结果,这样我就可以像调用表一样调用该过程

添加的可能重复项解释其原因