我有一个关于MySQL where和clauses的问题。以下两个陈述是否相同:
1. select * from products where id <> 1 and num > 2
2. select * from products where (id <> 1 and num > 2)
答案 0 :(得分:2)
是的,它们是一样的。这里的括号与条件中所有括号的作用相同。
与AND
一起使用时,只要其中只有AND
,它们对条件没有任何影响。同样适用于仅包含OR
的语句。当与AND
和OR
一起使用时,只要它们用于子操作而不是整个条件,它们就会产生影响:
A AND (B OR C) != (A AND B) OR C
在SQL中,括号也用于IN
子句,EXISTS
,子查询和其他基础