and、or運算子的組合使用
在where子句中,通過and、or運算子可以同時連線多個條件,當然and、or運算子也可以同時使用。但是當and、or運算子同時存在時,其優先順序如何確定呢?與大多數語言一樣,sql語言認為and運算子的運算級別要高於or運算子。即當出現:
condition1 or condition2 and condition3
其運算實際上是等價於:condition1 or (condition2 and condition3) //先運算and 再運算or
因此,and、or運算子需要同時使用時,一定要注意運算子的優先順序
網上獲取計算機和生物老師工資》1000的人
select tname, dname, sal可以發現,當在or運算子連線的兩個條件加上括號( )後,得到了需要的查詢結果。這是因為,括號( )的優先順序高於and運算子,執行過程就先於and運算子。from teacher
where (dname='計算機' or dname='生物')
and sal>1000
order by sal
注意 當or運算子和and運算子同時運用時,建議使用者不要考慮其預設的優先順序順序,而是採用括號( )來實現需要的執行順序,這樣可以增強程式的可讀性。
SQL中 and or優先順序問題
剛剛在專案中遇到這樣乙個問題,sql語句如下 select from loan back library where library id 1 or lib id 1 and status 3 我想要的結果的條件是 1.library id 1 或者 lib id 1 2.status 3 但是結果...
SQL中 and or優先順序問題
sql中 and or優先順序問題 剛剛在專案中遇到這樣乙個問題,sql語句如下 select from loan back library where library id 1 or lib id 1 and status 3 我想要的結果的條件是 1.library id 1 或者 lib id...
SQL中 and or優先順序問題
原文 剛剛在專案中遇到這樣乙個問題,sql語句如下 select from loan back library where library id 1 or lib id 1 and status 3 我想要的結果的條件是 1.library id 1 或者 lib id 1 2.status 3 但...