我需要搜索第二个和第三个字符为oo的名称。而且姓氏不是Tomeloos。
我想出了这个查询
SELECT * FROM student
WHERE INSTR(naam, 'o') = 2 AND INSTR(naam, 'o') = 3
AND naam NOT LIKE '%Tomeloos';
但是像预期的那样,这是行不通的,因为这部分永远不会返回true:
AND INSTR(naam, 'o') = 3
因为它将在第二个位置看到一个o。
有谁知道我如何使用
INSTR
函数实现这一目标?谢谢
最佳答案
你可以试试
SELECT * FROM student
WHERE SUBSTR(naam, 2, 2) = 'oo'
AND naam NOT LIKE '%Tomeloos';
关于mysql - 依次在字符串中搜索2个相同的字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39390925/