вернуть все строки, где значение столбца является префиксом данной строки - PullRequest
0 голосов
/ 06 января 2020

У меня есть table, одна из его columns является строкой (varchar);

дано строка, например "/ a / b / c / d / e / f", найти все строки, где значение столбца является префиксом этой строки. Так что если есть следующие строки:

id, stringColum

1 ,/a/b/c/d
2 ,/e/f/a
3 ,/a/b/c/d/e/

, поэтому я хочу получить в результате строки 1 и 3, потому что оба являются префиксами / a / b / c / d / e / f

Ответы [ 2 ]

0 голосов
/ 06 января 2020

С INSTR() функцией:

select * from tablename where instr('/a/b/c/d/e/f', stringColum) = 1
0 голосов
/ 06 января 2020

Это то, что вы хотите?

select * from mytable where '/a/b/c/d/e/f' like concat(stringColum, '%')

Демонстрация на DB Fiddle :

id | stringColum
-: | :----------
 1 | /a/b/c/d   
 3 | /a/b/c/d/e/

Вы также можете express это с INSTR():

select * from mytable where instr('/a/b/c/d/e/f', stringColum) = 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...