Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
select * from ekta;
TYPE
-----
CC
DD
BB
AA
exec :X := 'AA,BB'
select * from ekta where :x like '%'||type||'%';
TYPE
-----
BB
AA
CREATE OR REPLACE FUNCTION f_string_in_list_yn
(
p_search_string IN VARCHAR2,
p_argument_list IN VARCHAR2,
p_delimiter_char IN CHAR DEFAULT ','
)
RETURN CHAR
IS
v_delimiter_char CHAR(01) := nvl(substr(p_delimiter_char,1,1),',');
BEGIN
/*====================================================*/
-- Wrap delimiter around the values: AA becomes ,AA,
-- and then see if the search string is in the list
/*====================================================*/
IF instr( v_delimiter_char||p_argument_list||v_delimiter_char,
v_delimiter_char||p_search_string||v_delimiter_char) > 0
THEN
RETURN('Y'); --Value is in the list
ELSE
RETURN('N'); --Value is NOT in the list
END IF;
END f_string_in_list_yn;
SQL> create table my_tab (text varchar2(05));
Table created
SQL> insert into my_tab values ('AA');
1 row inserted
SQL> insert into my_tab values ('A');
1 row inserted
SQL> insert into my_tab values ('BB');
1 row inserted
SQL> insert into my_tab values ('B');
1 row inserted
SQL> commit;
Commit complete
SQL> select text, f_string_in_list_yn(text,'A,AA,BB') yn from my_tab;
TEXT YN
----- --------------------------------------------------------------------------------
AA Y
A Y
BB Y
B N
SQL>
--
--Original Poster's Examples:
--Select * from table where type IN :1
--Select * from table where type IN ('AA,BB')
--
--Test on MY_TAB:
--
SQL> SELECT *
2 FROM my_tab
3 WHERE f_string_in_list_yn(text,'AA,BB') = 'Y';
TEXT
-----
AA
BB
SELECT *
FROM table
WHERE f_string_in_list_yn(type,'AA,BB') = 'Y';