




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第十章第十章 T-SQL T-SQL 查詢基礎(chǔ)查詢基礎(chǔ)本章內(nèi)容nSelect語句的功能n使用select語句查詢數(shù)據(jù)n使用Top、 Distinct關(guān)鍵字n使用計(jì)算列n修改查詢顯示的列名(列標(biāo)題)n使用Where子句n使用LIKE子句進(jìn)行模糊查詢n使用Order by給數(shù)據(jù)排序Select語句的功能n檢索數(shù)據(jù)n查詢SQL Server系統(tǒng)信息n給變量賦值n使用select語句查詢數(shù)據(jù)n使用“ * ”選取所有列n指定列n使用where子句選擇行Select 語句的部分語法n:選取哪些列n:從哪些表選取數(shù)據(jù)n:搜索條件SELECT ALL | DISTINCT FROM ,n WHERE 使用“
2、* ”選取所有列n例:Select * from employeesn顯示employee的所有行、所有列n可能會(huì)造成漫長的查詢,盡量避免使用這種語句指定列1DavolioNancySales Representative2FullerAndrewVice President, Sales3LeverlingJanetSales Representative4PeacockMargaretSales Representative5BuchananStevenSales Manager6SuyamaMichaelSales Representative7KingRobertSales Repre
3、sentative8CallahanLauraInside Sales Coordinator9DodsworthAnneSales RepresentativeUSE northwindSELECT employeeid, lastname, firstname, titleFROM employeesGO使用where子句選擇行5BuchananStevenSales ManagerUSE northwindSELECT employeeid, lastname, firstname, titleFROM employeesWHERE employeeid = 5GOSelect 語句的其
4、他功能(演示)n查詢系統(tǒng)信息nSelect versionn給變量賦值ndeclare a int select a=3 select a使用Top關(guān)鍵字n返回表中前面的一部分?jǐn)?shù)據(jù);n語法: Select TOP integer | TOP integer PERCENTColumn_name ,n FROM table_namen示例nTOP 120 /*返回120行*/nTOP 15 PERCENT /*返回15%的數(shù)據(jù)行*/使用Distinct關(guān)鍵字n從返回的結(jié)果集中刪除重復(fù)的行n語法:SELECT ALL | DISTINCT TOP n PERCENT .n注意:distinct 和
5、 top關(guān)鍵字出現(xiàn)的先后順序課堂演示nTOPnSelect country from publishersnSelect top 3 country from publishersnSelect top 3 percent from publishersnDISTINCTnSelect country from publishersnSelect distinct country from publishersnSelect distinct top 2 country from publishers使用計(jì)算列n在查詢時(shí)使用計(jì)算列n在創(chuàng)建表時(shí)使用計(jì)算列在查詢時(shí)使用計(jì)算列(一)n查詢Pubs數(shù)據(jù)
6、庫中titiles表中的書號(hào)、書名、單價(jià),銷售數(shù)量(ytd_sales)Select title_id, title, price, ytd_sales, From titles在查詢時(shí)使用計(jì)算列(二)n查詢Pubs數(shù)據(jù)庫中titiles表中的書號(hào)、書名、單價(jià),銷售數(shù)量以及這批書的總銷售額。Select title_id, title, price, ytd_sales, price * ytd_salesFrom titles在創(chuàng)建表時(shí)使用計(jì)算列(一)n語法:CREATE TABLE database_name. owner .| owner. table_name( | column_na
7、me AS computed_column_expression | := CONSTRAINT constraint_name | PRIMARY KEY | UNIQUE ,.n ) 在創(chuàng)建表時(shí)使用計(jì)算列(二)n舉例:CREATE TABLE titles (title_id varchar (6) ,title varchar (80) type char (12),price money , ytd_sales int, ytd_income AS price * ytd_sales ) 修改查詢顯示的列名(列標(biāo)題)n對列名進(jìn)行操作有3種方式nCol_name col_aliasnCo
8、l_alias=col_namenCol_name AS col_alias課堂練習(xí)n針對pubs數(shù)據(jù)庫的titles表n查詢時(shí)使用計(jì)算列,顯示折后價(jià)格n使用計(jì)算列創(chuàng)建一個(gè)類似的表n使用三種修改列名方法中的任意一種,修改查詢顯示的列名使用Where子句n在Where字句中使用不同的搜索條件過濾數(shù)據(jù)n比較操作符n字符串比較n邏輯操作符n使用BETWEEN關(guān)鍵字n使用IN關(guān)鍵字n未知的值(NULL)比較操作符n比較操作符n=, n , !=, !, !=, , !這類比較操作符,他們會(huì)使查詢速度減慢。使用邏輯操作符n使用邏輯操作符連接多個(gè)表達(dá)式n邏輯操作符:nANDnORnNOT使用邏輯操作符舉例
9、n查詢pubs數(shù)據(jù)庫中titles表價(jià)格小于20美元且種類為business的所有圖書。Select title_id, title, type, priceFrom titlesWhere price = 15 And price = 20使用IN關(guān)鍵字n使用IN關(guān)鍵字簡化對某一范圍的數(shù)據(jù)的檢索。n舉例:在pubs數(shù)據(jù)庫的authors表中搜索所有居住在KS, CA, MI或IN州的作家。Select au_id, au_lname, au_fnameFrom authorsWhere state IN (CA,KS,MI,IN)IN語句的替代方式n如果不使用IN語句,可以用別的方式代替:S
10、elect au_id, au_lname, au_fnameFrom authorsWhere state = CA OR state = KS OR state = MI OR state = IN范圍查找n對某一個(gè)范圍的數(shù)據(jù)的查找,我們可以n把 以及And, OR結(jié)合起來用;n使用betweenand語句n使用in語句n注意:盡量避免使用NOT運(yùn)算符,那樣會(huì)減慢查詢速度nNot betweenandnNot in未知的值、空值NULLn什么是NULL值?n在輸入數(shù)據(jù)的時(shí)候,如果沒有指定某一個(gè)字段的值,且此字段沒有定義缺省的值,則稱此字段含有空值(NULL)n如何判斷某個(gè)字段是否為空:co
11、l_name = NULLcol_name IS NULL關(guān)于NULLn檢查某一列是否為空,使用IS NULL,IS NOT NULL。決不能使用=NULL或!= NULL。n空值參與運(yùn)算結(jié)果都是空值。一定要注意這一點(diǎn),否則會(huì)帶來不可預(yù)計(jì)的結(jié)果。課堂練習(xí)n搜索pubs數(shù)據(jù)庫中的titles表,返回書的價(jià)格打了8折后仍大于12美元的書的代號(hào)、種類、書的原價(jià)。n查詢pubs數(shù)據(jù)庫中titles表價(jià)格在10-20美元之間且種類為business或popular_comp的所有圖書。n查詢titles表中沒有價(jià)格的圖書。使用LIKE子句進(jìn)行模糊查詢n通配符的使用n轉(zhuǎn)意字符的使用通配符的使用n%:任意多
12、個(gè)任意字符n_:單個(gè)任意字符n:方括號(hào)內(nèi)列出的任一個(gè)字符n:任意一個(gè)沒在方括號(hào)內(nèi)列出的字符LIKE子句與通配符(一)n查詢所有以D開頭的作家的名字Use pubsGoSelect au_lname + , + au_fnameFrom authorsWhere au_fname LIKE D%goLIKE子句與通配符(二)n老板要來查一個(gè)人的資料,只記得這個(gè)人的編號(hào)中的某幾位,第一部分前兩位為72,第二部分第一位為5(注:authors表中電話號(hào)碼的格式是#-#-#)use pubsgoSelect * from authorsWhere au_id LIKE 72_-5%LIKE子句與通配符
13、(三)n老板又來查資料了!只記得這個(gè)人的編號(hào)中的某幾位,第一部分前兩位為72,第二部分第一位不是0就是8,第三部分最后兩位是91(注:authors表中電話號(hào)碼的格式是#-#-#)use pubsgoSelect * from authorsWhere au_id LIKE 72_-08_-_91通配符使用小結(jié)(一)通配符使用小結(jié)(二)n一定要把LIKE運(yùn)算符與=運(yùn)算符區(qū)別開來!n同配符只有在LIKE子句中才有意義。Use pubsGoSelect au_lname + , + au_fnameFrom authorsWhere au_fname = D%go轉(zhuǎn)義字符的使用n萬一要查詢的字符串
14、中包含了通配符作為字符串的一部分,如何處理?n假設(shè)一個(gè)表test的某一列col有以下4個(gè)值:nxyzn%xyznx_yznxyz轉(zhuǎn)義字符舉例n查找以“X_”開頭的字符串Select col From testWhere col LIKE X_%ESCAPE 課堂練習(xí)n通配符練習(xí):書上148頁試一試。n轉(zhuǎn)義符練習(xí):使用演示腳本創(chuàng)建表、插入數(shù)據(jù),查找以%開頭的數(shù)據(jù)。使用Order by給數(shù)據(jù)排序n語法: ORDER BY order_by_expression ASC | DESC ,.n norder_by_expression:指定要排序的列。nASC:升序(默認(rèn))nDESC:降序使用Order by排序舉例(一)n對pubs數(shù)據(jù)庫中stores表中的倉庫名進(jìn)行排序。Use pubsGoSelect stor_nameFrom storesOrder by stor_namego使用Order by排序舉例(二)n使用列的位置指定要排序的列。Use pubsGoSelect stor_id,stor_name,stor_addressFrom storesOrder by 2 DESCgo使用Order by排序舉例(三)n對計(jì)算列進(jìn)行排序Use pubsGoSelect title_id,price * ytd_sales AS profit From titlesOr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 合伙人經(jīng)營協(xié)議書
- 醫(yī)院擦玻璃合同范本
- 保姆聘請合同范本
- 合同標(biāo)注正規(guī)合同范本
- 廠房抵賬合同范本
- 三亞合同范本
- 廠房 轉(zhuǎn)讓 出租合同范本
- 雙擁賓館合同范本
- 廚房用工合同范本
- 雙甲方施工合同范本
- 2025至2030年中國單板電磁制動(dòng)器數(shù)據(jù)監(jiān)測研究報(bào)告
- 2024年07月國新國證期貨有限責(zé)任公司(海南)2024年招考2名工作人員筆試歷年參考題庫附帶答案詳解
- 2021年考研英語一真題
- 人教版數(shù)學(xué)八年級下冊 第17章 勾股定理 單元測試(含答案)
- 國網(wǎng)標(biāo)書制作流程
- 六年級語文教學(xué)學(xué)情分析提高六語文質(zhì)量的措施
- 中醫(yī)藥臨床適宜技術(shù)
- 銀發(fā)經(jīng)濟(jì)的發(fā)展路徑
- 工業(yè)廠房水電安裝施工方案
- 城鄉(xiāng)規(guī)劃管理與法規(guī)系列講座課件-城市規(guī)劃依法行政案例
- 《自動(dòng)噴水滅火系統(tǒng)設(shè)計(jì)》圖示
評論
0/150
提交評論