SQL найти слово в строке - PullRequest
       9

SQL найти слово в строке

0 голосов
/ 09 февраля 2020

У меня есть строка в таком формате:

'%asdasasd\ngalaxy\n4198461841\nasdadadqd\n11111118181gals%'

, и мне нужно знать, что эта строка содержит слово из столбца mName в table1:

enter image description here

В этом случае мне нужно, чтобы результат был galaxy

1 Ответ

0 голосов
/ 09 февраля 2020

Я не знаю, какую базу данных вы используете, но это будет работать в Mysql и Oracle:

select *
from table1
where instr('%asdasasd\ngalaxy\n4198461841\nasdadadqd\n11111118181gals%', mname) <> 0;

Я создал таблица с именем test Вы используете функцию instr, чтобы найти значение из столбца mName в строке, если оно существует, тогда вы покажете его.

Вот DEMO

Или, как предложил Форпас в своем комментарии, вы можете использовать как:

select * from table1
where '%asdasasd\ngalaxy\n4198461841\nasdadadqd\n11111118181gals%'
      like '%'||mname||'%' 
...