MySQL |OR運算符

概論::本章講如何用or運算符來連接多個布爾值來過濾數據。

MySQL OR 操作符

MySQL OR 操作符聯建兩個布爾表達式,只要其中一個為真,則結果為真。

如下的表達式:.

1boolean_expression_1 OR boolean_expression_2n

boolean_expression_1 OR boolean_expression_2 返回true,false,null.

MySQL OR 短路估值

MySQL OR操作符與and一樣用短路估值,也就是說,mysql一旦可以判斷最終結果就不會繼續之後後面的語句。

例如:

SELECT 1 = 1 OR 1 / 0;n

返回值為true

因為1=1為ture,在or操作符中,只要有一個true,那麼,無論之後為任何值,得到的結果都是true,所以,之後就不會有再多的判斷。

操作符的優先順序

and和or都是操作符,但and的有優先順序在or之前,也就是在有and和or同時存在的情況,優先計算and操作符,然後再計算or操作符。

例如:

SELECT true OR false AND false;n

1.先計算 and操作符,儘管and的位置靠後

2.在計算and操作符的結果與or進行計算,最後的到的結果為1

那麼,在我們使用操作符的時候,盡量用括弧將要優先計算的操作符包括。

實例:

SELECT ncustomername, countrynFROMncustomersnWHEREncountry = USA OR country = France;n

1.篩選是usa或france的顧客

SELECT

customername, country, creditLimitnFROMncustomersnWHEREn(country = USA OR country = France)nAND creditlimit > 100000;n

2.篩選usa或france且額度大於100000的客戶

SELECTncustomername, country, creditLimitnFROMncustomersnWHEREncountry = USA OR country = France AND creditlimit > 100000;n

3.篩選usa的客戶或france的額度大於10000的客戶。


推薦閱讀:

shiny儀錶盤應用——2016年美國大選數據可視化案例
數值型與字元型轉換總結|R語言
Learn R | 機器學習中的人工神經網路(七)
PolYamoR的簡介:Python和R之間的雙向翻譯器

TAG:R编程语言 | MySQL | 数据分析 |