簡體   English   中英

帶和/或的where子句中的SQL執行順序

[英]SQL execution order in where clause with and/or

SQL查詢

SELECT * FROM table_a where cond1 or cond2 and cond3;

提供與以下結果相同的結果

SELECT * FROM table_a where (cond1 or cond2) and cond3;

不會。布爾運算符具有優先級規則-在所有使用它們的編程語言中以及在此之前的數學中都有。 “ AND”比“ OR”綁定更緊密。 這類似於算術運算符。

就像:

1 + 2 * 3

不同於:

(1 + 2) * 3

您的兩個版本不同。 AND綁定更緊密(如* )。 OR不太緊密(如+ )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM