MySQL 查询错误:括号不匹配,如何解决?
mysql查询错误:括号不匹配
你在执行mysql查询时遇到了一个错误,错误信息中提到括号不成对。让我们仔细检查一下你的查询:
select p.* from product as p, product_product_category as c where p.deleting = 0 and ( p.product_category_id in (1, 2) or ( p.product_id = c.product_id and c.product_category_id in (1, 2) ) )
正如错误信息所提示,该查询中确实有括号不匹配的情况。仔细观察,你会发现左括号有 6 个,而右括号只有 5 个。这会导致mysql无法正确解析查询,并抛出错误。
要解决此错误,你需要确保括号成对出现。修改后的查询如下:
select p.* from product as p, product_product_category as c where p.deleting = 0 and ( p.product_category_id in (1, 2) or ( p.product_id = c.product_id and c.product_category_id in (1, 2) ) )
在这种情况下,左右括号数目相同,查询应该能正常执行。
以上就是MySQL 查询错误:括号不匹配,如何解决?的详细内容,更多请关注其它相关文章!