MySQL选择col1(int)的值为2或3且col2(tinybit)=0的位置
正如您在问题中所看到的,我需要选择具有动态给定的两个值之一的所有行,其中行布尔值(tinyint)为false 这是我当前的查询,但它仅排除MySQL选择col1(int)的值为2或3且col2(tinybit)=0的位置,mysql,Mysql,正如您在问题中所看到的,我需要选择具有动态给定的两个值之一的所有行,其中行布尔值(tinyint)为false 这是我当前的查询,但它仅排除类别公司id为0且类别公司id已禁用为1的行,而不包括类别公司id为1且类别公司id已禁用为1的行 SELECT * FROM `category` WHERE `category_company_id` = 1 OR `category_company_id` = 0 AND `category_disabled` = 0 我做错了什么 有没有办法
类别公司id
为0且类别公司id已禁用
为1的行,而不包括类别公司id
为1且类别公司id已禁用
为1的行
SELECT * FROM `category`
WHERE `category_company_id` = 1
OR `category_company_id` = 0
AND `category_disabled` = 0
我做错了什么
有没有办法将WHERE和/或与and分开
提前感谢您的代码相当于:
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
使用括号。