我的数据库中有一个字符串

 "Dubai Marina[Dubai]"


我正在使用类似运算符搜索表。
我可以只搜索像Dubai Marina这样的开始字符串吗?我想在使用like运算符时删除[]中的文本。
怎么做

最佳答案

假设您只想在方括号之前的文本部分中搜索Dubai,则可以尝试:

SELECT *
FROM yourTable
WHERE SUBSTRING(place, 1, INSTR(place, '[')-1) LIKE '%Dubai%';


您可以自己验证以下内容仅返回文本Dubai Marina

SUBSTRING('Dubai Marina[Dubai]', 1, INSTR('Dubai Marina[Dubai]', '[')-1)


这是应该处理位置甚至没有任何方括号的情况的另一个选项:

SELECT *
FROM yourTable
WHERE place REGEXP '^[^\[]*Dubai';

关于mysql - Mysql Like运算符问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60024410/

10-13 01:29