




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、SQL語(yǔ)句句的基本語(yǔ)語(yǔ)法一.SELLECT語(yǔ)語(yǔ)句的完整整語(yǔ)法為:SELEECTAALL|DDISTIINCT|DISTTINCTTROW|TOP*|ttalbee.*|tablle.ffieldd1ASS aliias1,ttablee.fiield22AS aliaas2,FROOM taableeexpreessioon,INN extternaaldattabasseWWHEREEGGROUPP BYHAAVINGGOORDERR BYWIITH OOWNERRACCEESS OOPTIOON說(shuō)明明:用中括括號(hào)()括起來(lái)來(lái)的部分表表示是可選選的,用大大括號(hào)()括起起來(lái)的部分分是表示必必須
2、從中選選擇其中的的一個(gè)。1 FROOM子句FFROM子子句指定了了SELEECT語(yǔ)句句中字段的的來(lái)源。FFROM子子句后面是是包含一個(gè)個(gè)或多個(gè)的的表達(dá)式(由逗號(hào)分分開),其其中的表達(dá)達(dá)式可為單單一表名稱稱、已保存存的查詢或或由 INNNER JOINN、LEFFT JOOIN 或或 RIGGHT JJOIN 得到的復(fù)復(fù)合結(jié)果。如果表或或查詢存儲(chǔ)儲(chǔ)在外部數(shù)數(shù)據(jù)庫(kù),在在IN 子子句之后指指明其完整整路徑。例例:下列SSQL語(yǔ)句句返回所有有有定單的的客戶:SSELECCT OrrderIID,Cuustommer.ccustoomerIIDFROOM Orrderss CusstomeersWHHE
3、RE Ordeers.CCustoomerIID=Cuustommers.CusttomeeersIDD2 ALLL、DISSTINCCT、DIISTINNCTROOW、TOOP謂詞(1) AALL 返返回滿足SSQL語(yǔ)句句條件的所所有記錄。如果沒(méi)有有指明這個(gè)個(gè)謂詞,默默認(rèn)為ALLL。例:SELEECT AALL FFirsttNamee,LasstNammeFROOM Emmployyees(2) DDISTIINCT 如果有多多個(gè)記錄的的選擇字段段的數(shù)據(jù)相相同,只返返回一個(gè)。(3) DISTTINCTTROW 如果有重重復(fù)的記錄錄,只返回回一個(gè)(44) TOOP顯示查查詢頭尾若若干記錄。也
4、可返回回記錄的百百分比,這這是要用 TOP N PEERCENNT子句(其其中N 表表示百分比比)例:返返回5%定定貨額最大大的定單SSELECCT TOOP 5 PERCCENT*FROMM OOrderr DettailssORDDER BBY UnnitPrrice*Quanntityy*(1-Disccountt) DEESC3 用 AAS 子句句為字段取取別名如果果想為返回回的列取一一個(gè)新的標(biāo)標(biāo)題,或者者,經(jīng)過(guò)對(duì)對(duì)字段的計(jì)計(jì)算或總結(jié)結(jié)之后,產(chǎn)產(chǎn)生了一個(gè)個(gè)新的值,希希望把它放放到一個(gè)新新的列里顯顯示,則用用AS保留留。例:返返回FirrstNaame字段段取別名為為NickkNamee
5、SELEECT FFirsttNamee AS NickkNamee ,LaastNaame ,CityyFROMM Empployeees例:返回新的的一列顯示示庫(kù)存價(jià)值值SELEECT PProduuctNaame ,UnittPricce ,UUnitssInSttock ,UniitPriice*UUnitssInSttock AS vvalueeInSttockFFROM Prodductss二 .WHHERE 子句指定定查詢條件件1 比較運(yùn)運(yùn)算符比較較運(yùn)算符 含義= 等于 大于= 大于等等于= 小于等于于 不不等于! 不大于于!#11/1/996# AAND OOrderrDate
6、e#96-1-1#也可以表表示為:WWHEREE OrdderDaateDDatevvaluee(1/1/966)使用 NNOT 表表達(dá)式求反反。例:查查看96年年1月1日日以后的定定單WHEERE NNot OOrderrDateeQuaantitty另一種種方法是用用 Miccrosoof JEET SQQL 獨(dú)有有的 JNNNER JOINN語(yǔ)法:FRROM ttablee1 INNNER JOINN tabble2OON taable11.fieeld1 compparission tablle2.ffieldd2其中ccompaarisiion 就就是前面WWHEREE子句用到到的比
7、較運(yùn)運(yùn)算符。SSELECCT FiirstNName,lasttNamee,OrdderIDD,CusstomeerID,OrdeerDatteFROOM EmmployyeesIINNERR JOIIN Orrderss ON Emplloyeees.EmmployyeeIDD=Ordders.EmplloyeeeID注意意:INNNER JJOIN不不能連接MMemo OLE Objeect SSinglle Dooublee 數(shù)據(jù)類類型字段。在一個(gè)JJOIN語(yǔ)語(yǔ)句中連接接多個(gè)ONN子句語(yǔ)法法:SELLECT fielldsFRROM ttablee1 INNNER JOINN tabbl
8、e2OON taable11.fieeld1 comppopr tablle2.ffieldd1 ANNDON tablle1.ffieldd2 coompoppr taable22.fieeld2 ORONN tabble1.fielld3 ccompoopr ttablee2.fiield33也可以SEELECTT fieeldsFFROM tablle1 IINNERR JOIIN(taable22 INNNER JJOIN ( tablle3IINNERR JOEER ( ttableexINNNER JOINNON tablle1.ffieldd1 coompoppr taable2
9、2.fieeld1OON taable11.fieeld2 comppopr tablle2.ffieldd2ON tablle1.ffieldd3 coompoppr taable22.fieeld3外外部連接返返回更多記記錄,在結(jié)結(jié)果中保留留不匹配的的記錄,不不管存不存存在滿足條條件的記錄錄都要返回回另一側(cè)的的所有記錄錄。FROOM taable LEFFT|RIIGHTJOINN tabble2OON taable11.fieeld1ccompaarisiion ttablee.fieeld2用用左連接來(lái)來(lái)建立外部部連接,在在表達(dá)式的的左邊的表表會(huì)顯示其其所有的數(shù)數(shù)據(jù)例:不不管有沒(méi)有有定
10、貨量,返返回所有商商品SELLECT ProdductNName ,OrdderIDDFROMM ProoducttsLEFFT JOOIN OOrderrs ONN Prooductts.PrrducttsID=Ordeers.PProduuctIDD右連接與與左連接的的差別在于于:不管左左側(cè)表里有有沒(méi)有匹配配的記錄,它它都從左側(cè)側(cè)表中返回回所有記錄錄。例:如如果想了解解客戶的信信息,并統(tǒng)統(tǒng)計(jì)各個(gè)地地區(qū)的客戶戶分布,這這時(shí)可以用用一個(gè)右連連接,即使使某個(gè)地區(qū)區(qū)沒(méi)有客戶戶,也要返返回客戶信信息??罩抵挡粫?huì)相互互匹配,可可以通過(guò)外外連接才能能測(cè)試被連連接的某個(gè)個(gè)表的字段段是否有空空值。SEELE
11、CTT *FRROM ttalbee1LEFFT JOOIN ttablee2 ONN tabble1.a=taable22.c1 連接查查詢中使用用Iif函函數(shù)實(shí)現(xiàn)以以0值顯示示空值Iiif表達(dá)式式: Iiif(IssNulll(Amoount,0,Ammout)例:無(wú)論論定貨大于于或小于¥50,都都要返回一一個(gè)標(biāo)志。Iif(Amoount50,?Bigg ordder?,?Smaall oorderr?)五. 分組組和總結(jié)查查詢結(jié)果在在SQL的的語(yǔ)法里,GGROUPP BY和和HAVIING子句句用來(lái)對(duì)數(shù)數(shù)據(jù)進(jìn)行匯匯總。GRROUP BY子句句指明了按按照哪幾個(gè)個(gè)字段來(lái)分分組,而將將記錄分
12、組組后,用HHAVINNG子句過(guò)過(guò)濾這些記記錄。GRROUP BY 子子句的語(yǔ)法法SELEECT ffidlddlisttFROMM tabbleWHHERE critteriaaGROOUP BBY grroupffielddlistt HAAVINGG grooupcrriterria注:Miicrossoft Jet數(shù)數(shù)據(jù)庫(kù) JJet 不不能對(duì)備注注或OLEE對(duì)象字段段分組。GGROUPP BY字字段中的NNull值值以備分組組但是不能能被省略。在任何SSQL合計(jì)計(jì)函數(shù)中不不計(jì)算Nuull值。GROUUP BYY子句后最最多可以帶帶有十個(gè)字字段,排序序優(yōu)先級(jí)按按從左到右右的順序排排列。例
13、:在WAA地區(qū)的的雇員表中中按頭銜分分組后,找找出具有同同等頭銜的的雇員數(shù)目目大于1人人的所有頭頭銜。SEELECTT Tittle ,Counnt(Tiitle) as TotaalFROOM EmmployyeesWWHEREE Reggion = WWAGRROUP BY TTitleeHAVIING CCountt(Tittle)1JETT SQLL 中的聚聚積函數(shù)聚聚集函數(shù) 意義SUUM ( ) 求和和AVG ( ) 平均值CCOUNTT ( ) 表達(dá)式式中記錄的的數(shù)目COOUNT (* ) 計(jì)算記記錄的數(shù)目目MAX 最大值MMIN 最最小值VAAR 方差差STDEEV 標(biāo)準(zhǔn)準(zhǔn)誤差F
14、IIRST 第一個(gè)值值LASTT 最后一一個(gè)值六. 用PParammeterrs聲明創(chuàng)創(chuàng)建參數(shù)查查詢Parrametters聲聲明的語(yǔ)法法:PARRAMETTERS namee dattatyppe,nname dataatypee, 其中中namee 是參數(shù)數(shù)的標(biāo)志符符,可以通通過(guò)標(biāo)志符符引用參數(shù)數(shù).Dattatyppe說(shuō)明參參數(shù)的數(shù)據(jù)據(jù)類型.使使用時(shí)要把把PARAAMETEERS 聲聲明置于任任何其他語(yǔ)語(yǔ)句之前.例:PARRAMETTERSLow pricce CCurreency,Begginniing ddatedataatimeeSELEECT OOrderrID ,OrdeerAm
15、oountFFROM OrdeersWHHERE OrdeerAMoountloww priiceAAND OOrderrDatee=BBeginnningg datte七. 功能能查詢所謂謂功能查詢?cè)?實(shí)際上上是一種操操作查詢,它可以對(duì)對(duì)數(shù)據(jù)庫(kù)進(jìn)進(jìn)行快速高高效的操作作.它以選選擇查詢?yōu)闉槟康?挑挑選出符合合條件的數(shù)數(shù)據(jù),再對(duì)對(duì)數(shù)據(jù)進(jìn)行行批處理.功能查詢?cè)儼ǜ滦虏樵?刪刪除查詢,添加查詢?cè)?和生成成表查詢.1 更新查查詢UPDDATE子子句可以同同時(shí)更改一一個(gè)或多個(gè)個(gè)表中的數(shù)數(shù)據(jù).它也也可以同時(shí)時(shí)更改多個(gè)個(gè)字段的值值.更新查查詢語(yǔ)法:UPDAATE 表表名SETT 新值WWHEREE 準(zhǔn)則
16、例例:英國(guó)客客戶的定貨貨量增加55%,貨運(yùn)運(yùn)量增加33%UPDDATE OEDEERSSEET OrrderAAmounnt = OrdeerAmoount *1.11Freiight = Frreighht*1.03WHHERE ShippCounntry = UUK2 刪除查查詢DELLETE子子句可以使使用戶刪除除大量的過(guò)過(guò)時(shí)的或冗冗于的數(shù)據(jù)據(jù).注:刪刪除查詢的的對(duì)象是整整個(gè)記錄.DELEETE子句句的語(yǔ)法:DELEETE 表名.*FROOM 來(lái)源源表WHEERE 準(zhǔn)準(zhǔn)則例: 要?jiǎng)h除所所有94年年前的定單單DELEETE *FROMM OrddersWWHEREE OrdderDaata
17、#94-11-1#3 追加查查詢INSSERT子子句可以將將一個(gè)或一一組記錄追追加到一個(gè)個(gè)或多個(gè)表表的尾部.INTOO 子句指指定接受新新記錄的表表valuueS 關(guān)關(guān)鍵字指定定新記錄所所包含的數(shù)數(shù)據(jù)值.IINSERRT 子句句的語(yǔ)法:INSEETR IINTO 目的表或或查詢(字字段1,字字段2,)vallueS(數(shù)值1,數(shù)值2,)例:增加一個(gè)個(gè)客戶INNSERTT INTTO Emmployyees(FirsstNamme,LaastNaame,ttitlee)vallueS(Harrry,Wasshinggton,Trraineee)4 生成表表查詢可以以一次性地地把所有滿滿足條件的的記
18、錄拷貝貝到一張新新表中.通通常制作記記錄的備份份或副本或或作為報(bào)表表的基礎(chǔ).SELEECT IINTO子子句用來(lái)創(chuàng)創(chuàng)建生成表表查詢語(yǔ)法法:SELLECT 字段1,字段2,INTTO 新表表IN 外部數(shù)據(jù)據(jù)庫(kù)FRROM 來(lái)來(lái)源數(shù)據(jù)庫(kù)庫(kù)WHERRE 準(zhǔn)則則例:為定定單制作一一個(gè)存檔備備份SELLECT *INTTO OrrderssArchhiveFFROM Ordeers八. 聯(lián)合合查詢UNNION運(yùn)運(yùn)算可以把把多個(gè)查詢?cè)兊慕Y(jié)果合合并到一個(gè)個(gè)結(jié)果集里里顯示.UUNIONN運(yùn)算的一一般語(yǔ)法:表查查詢1 UUNIONN ALLL查詢?cè)? UNNION 例:返返回巴西所所有供給商商和客戶的的名字和城城
19、市SELLECT ComppanyNName,CityyFROMM SuppplieersWHHERE Counntry = BBraziilUNNIONSSELECCT CoompannyNamme,CiityFRROM CCustoomerssWHERRE Coountrry = Braazil注:缺省的的情況下,UNIOON子句不不返回重復(fù)復(fù)的記錄.如果想顯顯示所有記記錄,可以以加ALLL選項(xiàng)UNNION運(yùn)運(yùn)算要求查查詢具有相相同數(shù)目的的字段.但但是,字段段數(shù)據(jù)類型型不必相同同.每一個(gè)個(gè)查詢參數(shù)數(shù)中可以使使用GROOUP BBY 子句句 或 HHAVINNG 子句句進(jìn)行分組組.要想以以指
20、定的順順序來(lái)顯示示返回的數(shù)數(shù)據(jù),可以以在最后一一個(gè)查詢的的尾部使用用OREEER BYY子句.九. 交叉叉查詢交叉叉查詢可以以對(duì)數(shù)據(jù)進(jìn)進(jìn)行總和,平均,計(jì)計(jì)數(shù)或其他他總和計(jì)算算法的計(jì)算算,這些數(shù)數(shù)據(jù)通過(guò)兩兩種信息進(jìn)進(jìn)行分組:一個(gè)顯示示在表的左左部,另一一個(gè)顯示在在表的頂部部.Miccrosooft JJet SSQL 用用TRANNSFROOM語(yǔ)句創(chuàng)創(chuàng)建交叉表表查詢語(yǔ)法法:TRAANSFOORM aaggfuunctiionSEELECTT 語(yǔ)句GGROUPP BY 子句PIIVOT pivootfieeldIIN(vaalue11 ,vvaluee2,) Agggfounnctioon指SQQ
21、L聚積函函數(shù),SEELECTT語(yǔ)句選擇擇作為標(biāo)題題的的字段段,GROOUP BBY 分組組說(shuō)明:Piivotffieldd 在查詢?cè)兘Y(jié)果集中中創(chuàng)建列標(biāo)標(biāo)題時(shí)用的的字段或表表達(dá)式,用用可選的IIN子句限限制它的取取值.vaalue代代表創(chuàng)建列列標(biāo)題的固固定值.例例:顯示在在19966年里每一一季度每一一位員工所所接的定單單的數(shù)目:TRANNSFORRM Coount(OrdeerID)SELEECT FFirsttNamee&LasttNamee AS FulllNameeFROMM Empployeees IINNERR JOIIN OrrderssON EEmplooyeess.Empplo
22、yeeeID = Orrderss.EmpployeeeIDWWHEREE DatteParrt(“yyyyy”,OrdderDaate)= 19996GGROUPP BY FirsstNamme&LasstNammeORDDER BBY FiirstNName&LLastNNamePPOVOTT DatteParrt(“qq”,OrrderDDate)&季度度十 .子查查詢子查詢?cè)兛梢岳斫饨鉃?套查查詢.子查查詢是一個(gè)個(gè)SELEECT語(yǔ)句句.1 表達(dá)式式的值與子子查詢返回回的單一值值做比較語(yǔ)語(yǔ)法:表達(dá)達(dá)式 coomparrisioon AANY|AALL|SSOME(子查詢?cè)?說(shuō)明:ANY和和SOMEE謂詞是同同義詞,與與比較運(yùn)算算符(=,=)一起使使用.返回回一個(gè)布爾爾值Truue或Faalse.ANY的的意思是,表達(dá)式與與子查詢返返回的一系系列的值逐逐一比
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 老年人高血壓管理指南2025
- Brand KPIs for online betting:10bet in Mexiko-英文培訓(xùn)課件2025.5
- Brand KPIs for online betting:Sportsbet.io in Brazil-英文培訓(xùn)課件2025.5
- DeepSeek+興趣教育應(yīng)用場(chǎng)景規(guī)劃方案
- 中職數(shù)學(xué)探究式教學(xué)模式的實(shí)踐與思考
- 西昌市互生家具廠項(xiàng)目環(huán)評(píng)報(bào)告
- 2024-2025年第二學(xué)期學(xué)校整體工作總結(jié)-知不足而奮進(jìn)
- 探析民辦高職院校學(xué)生工作的現(xiàn)狀及對(duì)策
- 山東省濟(jì)寧市微山縣第二中學(xué)2024-2025學(xué)年高二下學(xué)期第二次階段測(cè)試語(yǔ)文試題
- 物理試題及答案
- 城市軌道交通客運(yùn)組織電子教案(全)完整版課件整套教學(xué)課件
- GB∕T 33917-2017 精油 手性毛細(xì)管柱氣相色譜分析 通用法
- 高壓氧治療操作規(guī)程以及護(hù)理常規(guī)
- 高中人教物理選擇性必修二專題05 單雙桿模型-學(xué)生版
- 二手車評(píng)估作業(yè)表簡(jiǎn)單實(shí)際樣本
- 人民幣小學(xué)學(xué)具圖
- 新能源汽車的研究論文
- (完整word版)電梯管理證復(fù)審申請(qǐng)表
- 防錯(cuò)系統(tǒng)“紅兔子”使用作業(yè)指導(dǎo)文件PPT課件
- 北師大版小學(xué)數(shù)學(xué)五年級(jí)下冊(cè)單元測(cè)試題含答案(全冊(cè))
- 護(hù)理技術(shù)—鼻飼法課件
評(píng)論
0/150
提交評(píng)論