我在弄清楚为什么下面的SQL查询不起作用时遇到了一些麻烦...当members_only设置为0时,它仍然显示它们......
SELECT *
FROM reports
WHERE story = "1"
OR barebones = "1"
AND members_only = "1"
Run Code Online (Sandbox Code Playgroud)
这取决于您的数据,但您可能不知道ANDSQL中的优先级高于OR,因此您的查询实际上评估为:
SELECT *
FROM reports
WHERE story = '1'
OR (barebones = '1' AND members_only = '1')
Run Code Online (Sandbox Code Playgroud)
考虑使用其他答案的其他括号来明确声明您的意图