В таблице есть слово и предложения. Если слово найдено, как его найти? Ниже temp.word имеет информационную безопасность и информацию как. Для id = 100 я ожидаю увидеть информацию, когда она появится во второй раз (для получения дополнительной информации), поскольку у нас есть информационная безопасность в temp.word. Итак, нам нужно пропустить Информационную безопасность. Код ниже выбирает информацию, которая появляется первой.
Create table temp(
id NUMBER,
word VARCHAR2(1000),
Sentence VARCHAR2(2000)
);
insert into temp
select 100,'Information Security','Information security, sometimes shortened to infosec. For more information, visit https://infosec.com' FROM DUAL UNION ALL
select 200,'Information','Information-security information.' FROM DUAL UNION ALL
select 300,'Info','https://infosec.com Information Security' FROM DUAL;
select word,sentence, regexp_instr(sentence,word,1, 1, 0,'i') as token
from temp
where instr(UPPER(sentence), UPPER('information')) > 0
and regexp_like(sentence,'information','i')