有没有办法搜索值中但不在括号中的术语?
示例:让我们说我们搜索Bob:
鲍勃(不是鲍勃) - 正确
鲍勃(蒂姆) - 正确 蒂姆(鲍勃) - 忽略 鲍勃(鲍勃) - 正确
SELECT * FROM people WHERE name LIKE 'bob not in parenthesis'
答案 0 :(得分:2)
未经测试的:
SELECT INSTR('myteststring','Bob') and not(INSTR('myteststring','(Bob)'));
答案 1 :(得分:2)
SELECT * FROM table WHERE column NOT LIKE '%(Bob)%' AND column LIKE '%Bob%'
如果bob在括号中,即使第二个条件为真,它也会失败,如果不是两个条件都为真,那么返回值
答案 2 :(得分:-1)
您可以使用mysql函数:
CREATE FUNCTION CheckForTerm (items VARCHAR(255))
RETURNS bit(1)
BEGIN
DECLARE sf_result BIT DEFAULT 0;
SELECT count(*) from table where items in @item
SET sf_result = 1;
RETURN sf_result ;
END