版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
主講教師:魏巍巍北京信息職業(yè)技術(shù)學(xué)院數(shù)據(jù)庫技術(shù)與應(yīng)用運(yùn)算符創(chuàng)建采集任務(wù)01運(yùn)算符01目錄CONTENTS運(yùn)算符01Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.算術(shù)運(yùn)算符除法運(yùn)算和求余運(yùn)算中,如果除數(shù)為0,將是非法除數(shù),返回結(jié)果為NULL對于求余運(yùn)算,還有另外一種表達(dá)方式,使用MOD(a,b)函數(shù)與a%b效果一樣運(yùn)算符作用+加法運(yùn)算-減法運(yùn)算*乘法運(yùn)算/除法運(yùn)算,返回商%求余運(yùn)算,返回余數(shù)運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.示例createtabletmp1(numint);insertintotmp1value(64);selectnum,num+10,num-3+5,num+36.5,num*2,num/2,num/3,num%3fromtmp1;selectnum,num/0,num%0fromtmp1;運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.比較運(yùn)算符運(yùn)算符作用=等于<>
!=不等于<=>NULL安全的等于(NULL-safe)<小于<=小于等于>大于>=大于等于BETWEEN存在于指定范圍IN存在于指定集合ISNULL為NULLISNOTNULL不為NULLLIKE通配符匹配PEGEXP
PLIKE正則表達(dá)式匹配運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.等于運(yùn)算符(=)等號(=)用來判斷數(shù)字、字符串和表達(dá)式是否相等,如果相等,返回值為1,否則返回值為0。數(shù)值比較時有如下規(guī)則:(1)
若有一個或兩個參數(shù)為NULL,則比較運(yùn)算的結(jié)果為NULL。(2)
若同一個比較運(yùn)算中的兩個參數(shù)都是字符串,則按照字符串進(jìn)行比較。(3)
若兩個參數(shù)均為整數(shù),則按照整數(shù)進(jìn)行比較。(4)
若一個字符串和數(shù)字進(jìn)行相等判斷,則MySQL可以自動將字符串轉(zhuǎn)換為數(shù)字。select1=0,'2'=2,2=2,'0.02'=0,'b'='b',(1+3)=(2+2),NUll=NUll;運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.安全等于運(yùn)算符(<=>)這個操作符和=操作符執(zhí)行相同的比較操作,不過<=>可以用來判斷NULL值。在兩個操作數(shù)均為NULL時,其返回值為1而不為NULL;而當(dāng)一個操作數(shù)為NULL時,其返回值為0而不為NULL.select1<=>0,'2'<=>2,2<=>2,'0.02'<=>0,'b'<=>'b',(1+3)<=>(2+2),NUll<=>NUll;運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.小于或等于運(yùn)算符(<=)<=用來判斷左邊的操作數(shù)是否小于或者等于右邊的操作數(shù)。如果小于或者等于,返回值為1,否則返回值為0。<=不能用于判斷空值NULL。SELECT'good'<='god',1<=2,4<=4,5.5<5,(1+3)<=(2+1),NULL<=NUll;運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.小于運(yùn)算符<運(yùn)算符用來判斷左邊的操作數(shù)是否小于右邊的操作數(shù),如果小于,返回值為1;否則返回值為0。<不能用于判斯空值NULL。SELECT'good'<'god',1<2,4<4,5.5<5,(1+3)<(2+1),NULL<NUll;運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.ISNULL(ISNULL)和ISNOTNULL運(yùn)算符ISNULL和ISNULL檢驗(yàn)一個值是否為NULL,如果為NULL,返回值為1;否則返回值為0。ISNOTNULL檢驗(yàn)一個值是否非NULL,如果非NULL,返回值為1,否則返回值為0selectnullISNULL,ISNULL(NULL),ISNULL(10),10ISNOTNULL;運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.LEAST運(yùn)算符語法格式為LEAST(值1,值2,...,值n),其中值n表示參數(shù)列表中有n個值。在有兩個或多個參數(shù)的情況下,返回最小值。假如任意一個自變量為NULL,則LEAST()的返回值為NULL。SELECTleast(2,0),least(20.0,3.0,100.5),least('a','c','b'),least(10,NULL);運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.GREATEST(value1,value2,...)語法格式為GREATEST(值1,值2,...,值n),其中值n表示參數(shù)列表中有n個值。在有兩個或多個參數(shù)的情況下,返回最大值。假如任意一個自變量為NULL,則GREATEST()的返回值為NULL。由結(jié)果可以看到,當(dāng)參數(shù)是整數(shù)或者浮點(diǎn)數(shù)時,GREATEST將返其中最大的值;當(dāng)參數(shù)為字符串時,返回字母表中順序最靠后的字符;當(dāng)比較值列表中有NULL時,不能判斷大小,返同值為NULL。SELECTgreatest(2,0),greatest(20.0,3.0,100.5),greatest('a','c','b'),greatest(10,NULL);運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.IN、NOTIN運(yùn)算符IN運(yùn)算符用來判斷操作數(shù)是否為IN列表中的一個值,如果是,返回值為1;否則返回只為0;NOTIN運(yùn)算符用來判斷表達(dá)式是否不是IN列表中的一個值,如果不是,返回值為1,否則返回值為0。由結(jié)果可以看到,IN和NOTIN的返回值正好相反。select2in(1,3,5,'thks'),'thks'in(1,3,5,'thks'),2notin(1,3,5,'thks'),'thks'notin(1,3,5,'thks');運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.LIKE運(yùn)算符LIKE運(yùn)算符用來匹配字符串,語法格式為“exprLIKE匹配條件”。如果expr滿足匹配條件,則返回值為1(TRUE);如果不匹配,則返回值為0(FALSE)。若expr或匹配條件中任何一個為NULL,則結(jié)果為NULL。LIKE運(yùn)算符在進(jìn)行匹配運(yùn)算時,可以使用下面兩種通配符。(1)%:匹配任意數(shù)目的字符,甚至包括零字符。(2)_:只能匹配一個字符。select'stud'LIKE'stud','stud'LIKE'stu_','stud'LIKE'%d','stud'LIKE't___','s'LIKENULL;運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.REGEXP運(yùn)算符REGEXP運(yùn)算符用來匹配字符串,語法格式為“exprREGEXP匹配條件”。如果expr滿足兒條件,返回1;如果不滿足,則返回0;若expr或匹配條件中任意一個為NULL,則結(jié)果為NULL。REGEXP運(yùn)算符在進(jìn)行匹配運(yùn)算時,常用的有下面幾種通配符。(1)^:
匹配以該字符后面的字符開頭的字符串。
(2)$:
匹配以該字符后面的字符結(jié)尾的字符串。
(3).:
匹配任何一個單字符。
(4)[...]:
匹配在方括號內(nèi)的任意字符。例如,[abc]匹配a、b或c。為了命名字符的范圍,使用一個-。[a-z]匹配任意字母,而[0-9]匹配任意數(shù)字。
(5)*匹配一個或多個在它前面的字符。例如,x*匹配任意數(shù)量的x字符,[0-9]*匹配任意數(shù)量的數(shù)字,而.*匹配任意數(shù)量的任意字符。運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.正則表達(dá)式是一個可以進(jìn)行復(fù)雜查詢的強(qiáng)大工具,相對于LIKE字符串匹配,它可以使用更多的通配符類型,查詢結(jié)果更加靈活。SELECT'ssky'REGEXP'^s','ssky'REGEXP'y$','ssky'REGEXP'.sky','ssky'REGEXP'[ab]';運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.邏輯運(yùn)算符運(yùn)算符作用NOT
或者
!邏輯非AND或者
&&邏輯與OR
或者
||邏輯或XOR邏輯異或運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.NOT或者!邏輯非運(yùn)算符NOT或者!表示當(dāng)操作數(shù)為0時,所得值為1;當(dāng)操作數(shù)為非零值時,所得值為0;當(dāng)操作數(shù)為NULL時,所得的返回值為NULL。SELECTNOT10,NOT(1-1),!-5,!NULL,!1+1,NOT(1+1);運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.AND或者&&邏輯與運(yùn)算符AND成者&&表示當(dāng)所有操作數(shù)均為非零值、并且不為NULL時,計(jì)算所得結(jié)果為1;當(dāng)一個或多個操作數(shù)為0時,所得結(jié)為0;其余情況返回值為NULL。SELECT1AND-1,1AND0,1&&NULL,0&&NULL;運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.OR或者||邏輯或運(yùn)算符OR和||表示當(dāng)兩個操作數(shù)均為非NULL值,且任意一個操作數(shù)為非零值時,結(jié)果為1,否則結(jié)果為0;當(dāng)有一個操作數(shù)為NULL,且另一個操作數(shù)為非零值時,則結(jié)果為1,否則結(jié)果為NULL;當(dāng)兩個操作數(shù)均為NULL時,所得結(jié)果為NULL。SELECT1OR-1OR0,1OR2,1ORNULL,0ORNULL,NULLORNULL;運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.XOR邏輯異或運(yùn)算符XOR表示當(dāng)任意一個操作數(shù)為NULL時,返回值為NULL;對于非NULL為操作數(shù),如果兩個操作數(shù)都是非0值或者都是0值,則返回結(jié)果為0;如果一個為0值,另一個為非0值,返回結(jié)果為1。SELECT1XOR1,0XOR0,1XOR0,1XORNULL,1XOR1XOR1;運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.位運(yùn)算符運(yùn)算符作用|位或&位與^位異或<<位左移>>位右移~位取反,翻轉(zhuǎn)所有比特運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.位或運(yùn)算符(|)位或運(yùn)算的實(shí)質(zhì)是將參與運(yùn)算的兩個數(shù)據(jù),按對應(yīng)的二進(jìn)制數(shù)逐位進(jìn)行邏輯或運(yùn)算。對應(yīng)的二進(jìn)制位有一個或兩個為1則該位的運(yùn)算結(jié)果為1,否則為0.10的二進(jìn)制數(shù)值為1010,15的二進(jìn)制數(shù)值為1111,按位或運(yùn)算之后,結(jié)果為111,即整數(shù)15;9的二進(jìn)制數(shù)值為1001,4的二進(jìn)制數(shù)值為0100,2的二進(jìn)制數(shù)值為0010,按位或運(yùn)算之后,結(jié)果為1111,即也是整數(shù)15。SELECT10|15,9|4|2;運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.位與運(yùn)算符(&)位與運(yùn)算的實(shí)質(zhì)是將參與運(yùn)算的兩個操作數(shù),按對應(yīng)的二進(jìn)制數(shù)逐位進(jìn)行邏輯與運(yùn)算。對應(yīng)的二進(jìn)制位都為1,則該位的運(yùn)算結(jié)果為1,否則為0。10的二進(jìn)制數(shù)值為1010,15的一進(jìn)制數(shù)值為1111按位與運(yùn)算之后,結(jié)果為1010,即整數(shù)10;9的二進(jìn)制數(shù)值為1001,4的進(jìn)制教值為0100,2的二進(jìn)制數(shù)值為0010,按位與運(yùn)算之后,結(jié)果為0000,即整數(shù)0。SELECT10&15,9&4&2;運(yùn)算符Copyright?2017,Oracleand/oritsaffiliates.Allrightsreserved.位異或運(yùn)算符(^)位異或運(yùn)算的實(shí)質(zhì)是將參與運(yùn)算的兩個數(shù)據(jù),按對應(yīng)的二進(jìn)制數(shù)逐位進(jìn)行邏輯異或運(yùn)算。對應(yīng)位的二進(jìn)制數(shù)不同時,對應(yīng)位的結(jié)果才為1,如果兩個對應(yīng)位數(shù)都為0或者都為1,則對應(yīng)位結(jié)果為0.10的二進(jìn)制數(shù)值為1010,15的二進(jìn)制數(shù)值為1111,按位與運(yùn)算之后,結(jié)果為0101,即整數(shù)51的二進(jìn)制數(shù)值為0001,0的二進(jìn)制數(shù)值為0000,按位與運(yùn)算之后,結(jié)果為0001;1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電機(jī)學(xué)課件-清華大學(xué)
- 2024年全新裝修設(shè)計(jì)合作協(xié)議2篇
- 廣西大學(xué)附屬中學(xué)消防講座課件張琳敏課件
- 房屋擔(dān)保租賃合同(2篇)
- 2024年互聯(lián)網(wǎng)租賃平臺自行車退租退款及押金返還協(xié)議3篇
- 2025年貴州貨運(yùn)從業(yè)資格考試模擬考試題庫及答案解析
- 2025年福州貨運(yùn)從業(yè)資格試題答案解析
- 2025年武漢貨運(yùn)從業(yè)資格證考試模擬考試題及答案
- 2025年克拉瑪依b2考貨運(yùn)資格證要多久
- 2025年塔城貨運(yùn)資格證培訓(xùn)考試題
- 事業(yè)單位面試題-人際關(guān)系類
- Linux配置與管理智慧樹知到期末考試答案2024年
- 防失智老人走失試?yán)碚撛囶}及答案
- 腎活檢術(shù)后護(hù)理查房
- 血糖監(jiān)測技術(shù)新進(jìn)展培訓(xùn)課件
- 《衛(wèi)生檢疫》期末復(fù)習(xí)選擇題及答案
- 你那年那兔那些事兒
- 生活區(qū)公共服務(wù)設(shè)施布局規(guī)劃優(yōu)化
- DB21-T 2780.1-2017遼東落葉松二元立木材積表 第1 部分 日本落葉松
- 地源熱泵施工流程課件
- 智能物料搬運(yùn)機(jī)器人設(shè)計(jì)方案
評論
0/150
提交評論