Я знаю, что могу написать запрос, который будет возвращать все строки, содержащие любое количество значений в данном столбце, например:
Select * from tbl where my_col in (val1, val2, val3,... valn)
но если val1
, например, может появиться где угодно в my_col
, который имеет тип данных varchar (300), я мог бы написать:
select * from tbl where my_col LIKE '%val1%'
Есть ли способ расчесывать эти два метода. Мне нужно найти около 30 возможных значений, которые могут появляться в любом месте текста свободной формы столбца.
Совмещение этих двух операторов следующими способами не работает:
select * from tbl where my_col LIKE ('%val1%', '%val2%', 'val3%',....)
select * from tbl where my_col in ('%val1%', '%val2%', 'val3%',....)