我试图使用下面的查询,但它不起作用,它显示表中的所有数据库行。
有人请帮我解决我的问题。
SELECT *
FROM table
WHERE interests LIKE '%example%'
OR category LIKE '%example%'
AND id=1
我想运行此查询但是id = 1。但它显示了与此查询相关的所有记录。
答案 0 :(得分:1)
您必须()
对表达式进行分组,然后将这些结果合并。
SELECT *
FROM table
WHERE (interests LIKE '%example%' OR category LIKE '%example%')
AND id= '1'
答案 1 :(得分:1)
您的查询将按此执行
WHERE `interests` LIKE '%example%'
OR (`category` LIKE '%example%' AND `id`= '1')
因为AND
的优先级高于OR
。使用括号来修复查询
WHERE (`interests` LIKE '%example%' OR `category` LIKE '%example%')
AND `id`= '1'