我不确定为什么这个结构不起作用。这是我第一次使用 postgres,希望有人能帮助我。
SELECT * FROM "friends" WHERE "from" = '1' OR "to" = '1' AND "status" = '1'
它返回“from”为= 1且“to”= 1的所有值,而不是“status”为= 1的一个或另一个
我希望这不会太混乱。
谢谢。
我不确定为什么这个结构不起作用。这是我第一次使用 postgres,希望有人能帮助我。
SELECT * FROM "friends" WHERE "from" = '1' OR "to" = '1' AND "status" = '1'
它返回“from”为= 1且“to”= 1的所有值,而不是“status”为= 1的一个或另一个
我希望这不会太混乱。
谢谢。
OR 运算符的优先级低于 AND [1]。因此,表达式的计算如下:
(
"from" = '1'
)
OR
(
"to" = '1'
AND
"status" = '1'
)
您可能想要的是:
SELECT * FROM "friends" WHERE ("from" = '1' OR "to" = '1') AND "status" = '1'