![SQL語句的基本語法_第1頁](http://file4.renrendoc.com/view/9e80edad9fe285073a0a3ff2a59cb732/9e80edad9fe285073a0a3ff2a59cb7321.gif)
![SQL語句的基本語法_第2頁](http://file4.renrendoc.com/view/9e80edad9fe285073a0a3ff2a59cb732/9e80edad9fe285073a0a3ff2a59cb7322.gif)
![SQL語句的基本語法_第3頁](http://file4.renrendoc.com/view/9e80edad9fe285073a0a3ff2a59cb732/9e80edad9fe285073a0a3ff2a59cb7323.gif)
![SQL語句的基本語法_第4頁](http://file4.renrendoc.com/view/9e80edad9fe285073a0a3ff2a59cb732/9e80edad9fe285073a0a3ff2a59cb7324.gif)
![SQL語句的基本語法_第5頁](http://file4.renrendoc.com/view/9e80edad9fe285073a0a3ff2a59cb732/9e80edad9fe285073a0a3ff2a59cb7325.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、SQL語句的基基本語法一.SELECCT語句的完完整語法為:SELECCTALLL|DISTTINCT|DISTIINCTROOW|TOPP*|ttalbe.*|taable.fieldd1AS aliass1,tablee.fieeld2AAS aliias2,FROM tableeexpreessionn,IN exxternaaldataabaseWHERREGGROUP BYHAVINNGOORDER BYWITH OWNERRACCESSS OPTTION說說明:用中括括號()括起來的部部分表示是可可選的,用大大括號()括起來的的部分是表示示必須從中選選擇其中的一一個。1 FROM子
2、子句FROMM子句指定了了SELECCT語句中字字段的來源。FFROM子句句后面是包含含一個或多個個的表達(dá)式(由逗號分開開),其中的的表達(dá)式可為為單一表名稱稱、已保存的的查詢或由 INNERR JOINN、LEFTT JOINN 或 RIIGHT JJOIN 得得到的復(fù)合結(jié)結(jié)果。如果表表或查詢存儲儲在外部數(shù)據(jù)據(jù)庫,在INN 子句之后后指明其完整整路徑。例:下列SQLL語句返回所所有有定單的的客戶:SEELECT OrderrID,Cuustomeer.cusstomerrIDFROOM Ordders CCustommersWHHERE OOrderss.CusttomerIID=Cussto
3、merrs.CusstomeeersID2 ALL、DDISTINNCT、DIISTINCCTROW、TTOP謂詞(1) ALLL 返回滿滿足SQL語語句條件的所所有記錄。如如果沒有指明明這個謂詞,默默認(rèn)為ALLL。例:SEELECT ALL FFirstNName,LLastNaameFROOM Empployeees(2) DISTIINCT 如如果有多個記記錄的選擇字字段的數(shù)據(jù)相相同,只返回回一個。(33) DISSTINCTTROW 如如果有重復(fù)的的記錄,只返返回一個(44) TOPP顯示查詢頭頭尾若干記錄錄。也可返回回記錄的百分分比,這是要要用 TOPP N PEERCENTT子句(
4、其中中N 表示百百分比)例:返回5%定定貨額最大的的定單SELLECT TTOP 5 PERCEENT*FRROM Orderr DetaailsOORDER BY UnnitPriice*Quuantitty*(1-Discoount) DESC3 用 AS 子句為字段段取別名如果果想為返回的的列取一個新新的標(biāo)題,或或者,經(jīng)過對對字段的計(jì)算算或總結(jié)之后后,產(chǎn)生了一一個新的值,希希望把它放到到一個新的列列里顯示,則則用AS保留留。例:返回回FirsttName字字段取別名為為NickNNameSEELECT FirsttName AS NiickNamme ,LaastNamme ,Ciity
5、FROOM Empployeees例:返回回新的一列顯顯示庫存價(jià)值值SELECCT ProoductNName ,UnitPPrice ,UnittsInSttock ,UnitPPrice*UnitssInStoock ASS valuueInSttockFRROM Prroductts二 .WHERRE 子句指指定查詢條件件1 比較運(yùn)算符符比較運(yùn)算符符 含義= 等于 大大于= 大于于等于= 小于等于 不等于于! 不大大于!#11/1/966# ANDD OrdeerDatee#966-1-1#也可以表示示為:WHEERE OrrderDaateDaatevallue(11/1/966)使用
6、 NOOT 表達(dá)式式求反。例:查看96年年1月1日以以后的定單WWHERE Not OOrderDDateQuanntity另另一種方法是是用 Miccrosoff JET SQL 獨(dú)獨(dú)有的 JNNNER JJOIN語法法:FROMM tablle1 INNNER JJOIN ttable22ON taable1.fieldd1 commparission ttable22.fielld2其中ccomparrisionn 就是前面面WHEREE子句用到的的比較運(yùn)算符符。SELEECT FiirstNaame,laastNamme,OrdderID,CustoomerIDD,OrdeerDate
7、eFROM EmplooyeesIINNER JOIN Orderrs ON Emplooyees.EmplooyeeIDD=Ordeers.EmmployeeeID注意意:INNEER JOIIN不能連接接Memo OLE OObjectt Singgle Doouble 數(shù)據(jù)類型字字段。在一個個JOIN語語句中連接多多個ON子句句語法:SELLECT ffieldssFROM tablee1 INNNER JOOIN taable2OON tabble1.ffield11 comppopr ttable22.fielld1 ANNDON ttable11.fielld2 coompoprr
8、 tablle2.fiield2 ORON tablee1.fieeld3 ccompoppr tabble2.ffield33也可以SELLECT ffieldssFROM tablee1 INNNER JOOIN(taable2 INNERR JOINN ( tablee3INNNER JOOER ( taablexINNERR JOINNON ttable11.fielld1 coompoprr tablle2.fiield1OON tabble1.ffield22 comppopr ttable22.fielld2ON tablee1.fieeld3 ccompoppr tabble2
9、.ffield33外部連接返返回更多記錄錄,在結(jié)果中中保留不匹配配的記錄,不不管存不存在在滿足條件的的記錄都要返返回另一側(cè)的的所有記錄。FROM table LEFT|RIGHTJOIN table2ON table1.field1comparision table.field2用左連接來建立外部連接,在表達(dá)式的左邊的表會顯示其所有的數(shù)據(jù)例:不管有沒有定貨量,返回所有商品SELECT ProductName ,OrderIDFROM ProductsLEFT JOIN Orders ON Products.PrductsID=Orders.ProductID右連接與左連接的差別在于:不管左側(cè)表
10、里有沒有匹配的記錄,它都從左側(cè)表中返回所有記錄。例:如果想了解客戶的信息,并統(tǒng)計(jì)各個地區(qū)的客戶分布,這時可以用一個右連接,即使某個地區(qū)沒有客戶,也要返回客戶信息??罩挡粫嗷テヅ?,可以通過外連接才能測試被連接的某個表的字段是否有空值。SELECT *FROM talbe1LEFT JOIN table2 ON table1.a=table2.c1 連接查詢中中使用Iiff函數(shù)實(shí)現(xiàn)以以0值顯示空空值Iif表表達(dá)式: IIif(IssNull(Amounnt,0,AAmout)例:無論定定貨大于或小小于¥50,都都要返回一個個標(biāo)志。Iiif(Ammount50,?Big oorder?,?Smaa
11、ll orrder?)五. 分組和總總結(jié)查詢結(jié)果果在SQL的的語法里,GGROUP BY和HAAVING子子句用來對數(shù)數(shù)據(jù)進(jìn)行匯總總。GROUUP BY子子句指明了按按照哪幾個字字段來分組,而而將記錄分組組后,用HAAVING子子句過濾這些些記錄。GRROUP BBY 子句的的語法SELLECT ffidldllistFRROM taableWHHERE ccriterriaGRROUP BBY grooupfieeldlisst HAAVING grouppcriteeria注:Miccrosofft Jett數(shù)據(jù)庫 JJet 不能能對備注或OOLE對象字字段分組。GGROUP BY字段中中
12、的Nulll值以備分組組但是不能被被省略。在任任何SQL合合計(jì)函數(shù)中不不計(jì)算Nulll值。GRROUP BBY子句后最最多可以帶有有十個字段,排排序優(yōu)先級按按從左到右的的順序排列。例:在WA地區(qū)的雇員表中按頭銜分組后,找出具有同等頭銜的雇員數(shù)目大于1人的所有頭銜。SELECT Title ,Count(Title) as TotalFROM EmployeesWHERE Region = WAGROUP BY TitleHAVING Count(Title)1JET SQL 中的聚積函數(shù)聚集函數(shù) 意義SUM ( ) 求和AVG ( ) 平均值COUNT ( ) 表達(dá)式中記錄的數(shù)目COUNT (
13、* ) 計(jì)算記錄的數(shù)目MAX 最大值MIN 最小值VAR 方差STDEV 標(biāo)準(zhǔn)誤差FIRST 第一個值LAST 最后一個值六. 用Parrameteers聲明創(chuàng)創(chuàng)建參數(shù)查詢詢Parammeterss聲明的語法法:PARAAMETERRS namme dattatypee,namme dattatypee, 其中naame 是參參數(shù)的標(biāo)志符符,可以通過過標(biāo)志符引用用參數(shù).Daatatyppe說明參數(shù)數(shù)的數(shù)據(jù)類型型.使用時要要把PARAAMETERRS 聲明置置于任何其他他語句之前.例:PARAAMETERRSLoww pricce Cuurrenccy,Beeginniing daatedaat
14、atimmeSELEECT OrrderIDD ,OrdderAmoountFRROM OrrdersWWHERE OrderrAMounntloow priiceANND OrdderDatte=BBeginnning ddate七. 功能查詢詢所謂功能查查詢,實(shí)際上上是一種操作作查詢,它可可以對數(shù)據(jù)庫庫進(jìn)行快速高高效的操作.它以選擇查查詢?yōu)槟康?挑選出符合合條件的數(shù)據(jù)據(jù),再對數(shù)據(jù)據(jù)進(jìn)行批處理理.功能查詢詢包括更新查查詢,刪除查查詢,添加查查詢,和生成成表查詢.1 更新查詢UUPDATEE子句可以同同時更改一個個或多個表中中的數(shù)據(jù).它它也可以同時時更改多個字字段的值.更更新查詢語法法:UPD
15、AATE 表名名SET 新新值WHERRE 準(zhǔn)則例例:英國客戶戶的定貨量增增加5%,貨貨運(yùn)量增加33%UPDAATE OEEDERSSSET OrrderAmmount = OrdderAmoount *1.1Frreightt = Frreightt*1.033WHEREE ShippCounttry = UK2 刪除查詢DDELETEE子句可以使使用戶刪除大大量的過時的的或冗于的數(shù)數(shù)據(jù).注:刪刪除查詢的對對象是整個記記錄.DELLETE子句句的語法:DDELETEE 表名.*FROOM 來源表表WHEREE 準(zhǔn)則例: 要刪除所所有94年前前的定單DEELETE *FROMM Ordeers
16、WHEERE OrrderDaata#994-1-11#3 追加查詢IINSERTT子句可以將將一個或一組組記錄追加到到一個或多個個表的尾部.INTO 子句指定接接受新記錄的的表valuueS 關(guān)鍵鍵字指定新記記錄所包含的的數(shù)據(jù)值.IINSERTT 子句的語語法:INSSETR IINTO 目目的表或查詢詢(字段1,字段2,)valuueS(數(shù)值值1,數(shù)值22,)例:增加一個客客戶INSEERT INNTO Emmployeees(FiirstNaame,LaastNamme,tittle)vaalueS(Harrry,WWashinngton,Traainee)4 生成表查詢詢可以一次性性地
17、把所有滿滿足條件的記記錄拷貝到一一張新表中.通常制作記記錄的備份或或副本或作為為報(bào)表的基礎(chǔ)礎(chǔ).SELEECT INNTO子句用用來創(chuàng)建生成成表查詢語法法:SELEECT 字段段1,字段22,INTTO 新表IN 外部部數(shù)據(jù)庫FFROM 來來源數(shù)據(jù)庫WWHERE 準(zhǔn)則例:為為定單制作一一個存檔備份份SELECCT *INNTO OrrdersAArchivveFROMM Ordeers八. 聯(lián)合查詢詢UNIONN運(yùn)算可以把把多個查詢的的結(jié)果合并到到一個結(jié)果集集里顯示.UUNION運(yùn)運(yùn)算的一般語語法:表查詢1 UUNION ALL查詢2 UUNION 例:返回回巴西所有供供給商和客戶戶的名字和城城
18、市SELEECT CoompanyyName,CityFFROM SSuppliiersWHHERE CCountrry = BraziilUNIIONSELLECT CCompannyNamee,CityyFROM CustoomersWWHERE Counttry = Brazzil注:缺省的情況況下,UNIION子句不不返回重復(fù)的的記錄.如果果想顯示所有有記錄,可以以加ALL選選項(xiàng)UNIOON運(yùn)算要求求查詢具有相相同數(shù)目的字字段.但是,字段數(shù)據(jù)類類型不必相同同.每一個查查詢參數(shù)中可可以使用GRROUP BBY 子句 或 HAVVING 子子句進(jìn)行分組組.要想以指指定的順序來來顯示返回的的
19、數(shù)據(jù),可以以在最后一個個查詢的尾部部使用OREEER BYY子句.九. 交叉查詢詢交叉查詢可可以對數(shù)據(jù)進(jìn)進(jìn)行總和,平平均,計(jì)數(shù)或或其他總和計(jì)計(jì)算法的計(jì)算算,這些數(shù)據(jù)據(jù)通過兩種信信息進(jìn)行分組組:一個顯示示在表的左部部,另一個顯顯示在表的頂頂部.Miccrosofft Jett SQL 用TRANNSFROMM語句創(chuàng)建交交叉表查詢語語法:TRAANSFORRM agggfuncttionSEELECT 語句GROOUP BYY 子句PIIVOT ppivotffieldIN(vaalue1 ,vallue2,) Aggffouncttion指SSQL聚積函函數(shù),SELLECT語句句選擇作為標(biāo)標(biāo)題的
20、的字段段,GROUUP BY 分組說明:Pivottfieldd 在查詢結(jié)結(jié)果集中創(chuàng)建建列標(biāo)題時用用的字段或表表達(dá)式,用可可選的IN子子句限制它的的取值.vaalue代表表創(chuàng)建列標(biāo)題題的固定值.例:顯示在在1996年年里每一季度度每一位員工工所接的定單單的數(shù)目:TTRANSFFORM CCount(OrderrID)SEELECT FirsttName&LaastNamme AS FullNNameFRROM Emmployeees INNNER JJOIN OOrderssON Emmployeees.EmmployeeeID = Ordeers.EmmployeeeIDWHHERE DDa
21、tePaart(“yyyyy”,OrderrDate)= 19996GRROUP BBY FirrstNamme&LastNNameORRDER BBY FirrstNamme&LastNNamePOOVOT DDatePaart(“qq”,OrdderDatte)&季季度十 .子查詢子子查詢可以理理解為 套查查詢.子查詢詢是一個SEELECT語語句.1 表達(dá)式的值值與子查詢返返回的單一值值做比較語法法:表達(dá)式 compaarisioon ANNY|ALLL|SOMEE(子查詢詢)說明:ANYY和SOMEE謂詞是同義義詞,與比較較運(yùn)算符(=,=)一一起使用.返返回一個布爾爾值Truee或Falsse.ANYY的意思是,表達(dá)式與子子查詢返回的的一系列的值值逐一比較,只
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 智能卡制作發(fā)行機(jī)項(xiàng)目績效評估報(bào)告
- 2025年度公務(wù)卡協(xié)議酒店停車服務(wù)收費(fèi)標(biāo)準(zhǔn)合同
- 2025年度智慧校園建筑設(shè)計(jì)學(xué)院合作項(xiàng)目合同
- 2025年度光伏發(fā)電系統(tǒng)定期檢修合同
- 2025年度借貸居間服務(wù)合同信用評估與信貸風(fēng)險(xiǎn)控制
- 2025年度體育產(chǎn)業(yè)融資合同與賽事門票收入擔(dān)保書
- 2025年度辦公桌定制與安裝服務(wù)合同
- 2025年度文化遺址保護(hù)與開發(fā)項(xiàng)目合同
- 2025年度房地產(chǎn)項(xiàng)目市場調(diào)研及營銷策劃服務(wù)合同
- 2025年度建筑工程施工合同合同履行中的法律風(fēng)險(xiǎn)防范
- 2024年審計(jì)局公務(wù)員招錄事業(yè)單位招聘考試招錄139人完整版附答案【研優(yōu)卷】
- 濰坊市人民醫(yī)院招聘真題
- 銷售人員薪資提成及獎勵制度
- 2017年江蘇南京中考滿分作文《無情歲月有味詩》5
- 2023年宏觀經(jīng)濟(jì)學(xué)考點(diǎn)難點(diǎn)
- 2024-2030年中國智慧水務(wù)行業(yè)應(yīng)用需求分析發(fā)展規(guī)劃研究報(bào)告
- 黑龍江申論真題2021年(鄉(xiāng)鎮(zhèn))
- 山體排險(xiǎn)合同模板
- 醫(yī)保專(兼)職管理人員的勞動合同(2篇)
- 特殊感染手術(shù)的配合與術(shù)后處理課件
- 檢驗(yàn)科生物安全工作總結(jié)
評論
0/150
提交評論