正如你在这个问题看,我需要选择要么给出动态两个值的和其中的行布尔(TINYINT)是假的所有行
这里是我当前的查询,但它只是排除有行category_company_id
0和category_disabled
为1,不与那些category_company_id
为1,category_disabled
为1
SELECT * FROM `category`
WHERE `category_company_id` = 1
OR `category_company_id` = 0
AND `category_disabled` = 0
我究竟做错了什么?
有分离从和WHERE和OR的一种方式?
提前致谢
您的代码就相当于:
WHERE `category_company_id` = 1
OR (`category_company_id` = 0 AND `category_disabled` = 0)
因为与比或更高的优先级。
您可以使用括号:
WHERE (`category_company_id` = 1 OR `category_company_id` = 0 )
AND `category_disabled` = 0
或者运营商:
WHERE `category_company_id` IN (0, 1) AND `category_disabled` = 0
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句