WITH
WORDS
AS
( SELECT REGEXP_SUBSTR ('The quick brown fox',
'[^ ]+',
1,
LEVEL) AS STRING_PARTS
FROM DUAL
CONNECT BY REGEXP_SUBSTR ('The quick brown fox',
'[^ ]+',
1,
LEVEL)
IS NOT NULL)
SELECT SOMEFIELD
FROM SOMETABLE T
INNER JOIN WORDS W ON INSTR (T.SOMEFIELD, W.STRING_PARTS) > 0
Чем длиннее фраза и чем больше записей в SOMETABLE, тем дольше будет жужжать, причем никакие индексы не помогут - всю таблицу нужно будет просканировать полностью для каждого слова.
Допустим фраза "Адрей в Москве искал магазин для игрушек".
Что бы я мог взять каждый элемент в котором есть хоть одно слово из фразы выше.(из фразы,а не букв запятых,союзов и тд)