我有多选下拉列表,其中用户可以选择多个选项,现在我如何通过这个多选选项来选择查询。
代码
select number from table(get_number(('('1','2','3','4','5')','7','8')));
其中1, 2, 3, 4 and 5
是从多选下拉框中选择的多选选项。现在在get_number函数中,我传递count_number,role_number和test_id。 Count_number表示用户选择的多选项。所以我的问题是如何使用用户在我的get_number函数中输入的多选值,不确定是否可能,但是我是否需要在get_number函数中将count_number定义为数组?
答案 0 :(得分:0)
目前尚不清楚你想要实现的目标。下面是一个使用数组作为参数和输出的函数示例。
SQL> CREATE OR REPLACE TYPE tab_number AS TABLE OF NUMBER;
2 /
Type created
SQL> CREATE OR REPLACE FUNCTION get_number (p_array tab_number)
2 RETURN tab_number
3 IS
4 l_result tab_number := tab_number();
5 BEGIN
6 FOR i IN 1..p_array.count LOOP
7 /* do something with array */
8 l_result.extend;
9 l_result(i) := 2 * p_array(i);
10 END LOOP;
11 RETURN l_result;
12 END;
13 /
Function created
SQL> SELECT * FROM TABLE(get_number(tab_number(1,2,3,4,5)));
COLUMN_VALUE
------------
2
4
6
8
10