版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、該實驗以SQL Server 2000系統(tǒng)自帶的 pubs 數(shù)據(jù)庫為例,以一個圖書出版公司為模型。l SQL SERVER200實體關(guān)系圖描述l E-R圖描述(1)該系統(tǒng)中數(shù)據(jù)庫基本表如下:Authors:屬性名數(shù)據(jù)類型含義說明可為空檢查鍵/索引au_idId作者編號否是1主鍵au_lnamevarchar(40)作者姓否au_fnamevarchar(20)作者名否phonechar(12)電話否addressvarchar(40)地址是cityvarchar(20)所在城市是statechar(2)所在州是zipchar(5)郵編是是2contractBit是否簽約否1 au_id CHE
2、CK 約束定義為 (au_id LIKE '0-90-90-9-0-90-9-0-90-90-90-9')。2 zip CHECK 約束定義為 (zip LIKE '0-90-90-90-90-9')。=discounts屬性名數(shù)據(jù)類型含義說明可為空檢查鍵/索引discounttypevarchar(40)折扣類型否stor_idchar(4)商店編號是外鍵 stores(stor_id)lowqtySmallint數(shù)量下限是highqtySmallint數(shù)量上限是discountFloat折扣否=Employee屬性名數(shù)據(jù)類型含義說明可為空默認(rèn)值檢查鍵/索引e
3、mp_idEmpid職工編號否是1主鍵fnamevarchar(20)職工名否minitchar(1)是lnamevarchar(30)職工姓否job_idSmallint工作編號否1外鍵 jobs(job_id)job_lvlTinyint否10pub_idchar(4)出版社編號否'9952'外鍵publishers(pub_id)Hire_dateDatetime工作日期否GETDATE( )CHECK 約束定義為:(emp_id LIKE 'A-ZA-ZA-Z1-90-90-90-90-9FM') OR (emp_id LIKE 'A-Z-A-Z
4、1-90-90-90-90-9FM')。=Jobs屬性名數(shù)據(jù)類型含義說明可為空檢查鍵/索引job_idSmallint工作編號否主鍵job_descvarchar (50)工作描述否min_lvlTinyint否是1max_lvlTinyint否是2(1) min_lvl CHECK 約束定義為 (min_lvl >= 10)。(2) max_lvl CHECK 約束定義為 (max_lvl <= 250)。=pub_info屬性名數(shù)據(jù)類型含義說明可為空檢查鍵/索引pub_idchar(4)出版社編號否主鍵,外鍵 publishers(pub_id)logoImage標(biāo)志圖
5、是pr_infoText出版信息是=Publishers屬性名數(shù)據(jù)類型含義說明可為空檢查鍵/索引pub_idchar(4)出版社編號否是1主鍵pub_namevarchar(40)出版社名稱是cityvarchar(20)所在城市是statechar(2)所在州是countryvarchar(30)所在國家是1 pub_id CHECK 約束定義為 (pub_id = '1756' OR (pub_id = '1622' OR (pub_id = '0877' OR (pub_id = '0736' OR (pub_id =
6、39;1389') OR (pub_id LIKE '990-90-0')。=roysched屬性名數(shù)據(jù)類型含義說明可為空檢查鍵/索引title_idTid書編號否外鍵 titles(title_id)lorangeInt低是hirangeInt高是royaltyInt版權(quán)是=Sales屬性名數(shù)據(jù)類型含義說明可為空鍵/索引stor_idchar(4)商店編號否組合主鍵,聚集索引,外鍵 stores(stor_id)ord_numvarchar(20)訂單編碼否組合主鍵,聚集索引ord_dateDatetime訂購日期否qtySmallint數(shù)量否paytermsvarc
7、har(12)付款方式否title_idTid書編號否組合主鍵,聚集索引,外鍵 titles(title_id)=titles屬性名數(shù)據(jù)類型含義說明可為空檢查鍵/索引title_idTid書編號否主鍵titlevarchar(80)書名否typechar(12)類型否pub_idchar(4)出版社編號是外鍵 publishers (pub_id)priceMoney價格是advanceMoney預(yù)付款是royaltyInt版稅是Ytd_salesInt年銷售量是notesvarchar(200)簡介是pubdateDatetime出版日期是=Stores屬性名數(shù)據(jù)類型含義說明可為空檢查鍵/索
8、引stor_idchar(4)商店編號否主鍵stor_namevarchar(40)商店名稱是stor_addressvarchar(40)商店地址是cityvarchar(20)所在城市是statechar(2)所在州是zipchar(5)郵編是=titleauthor屬性名數(shù)據(jù)類型含義說明可為空檢查鍵/索引au_idid作者編號否組合主鍵,聚集索引,外鍵 authors(au_id)title_idtid書編號否組合主鍵,聚集索引,外鍵 titles(title_id)au_ordtinyint是royaltyperint版權(quán)百分比是(2)練習(xí)內(nèi)容目的1:1. 加深對表間關(guān)系的理解。2.
9、理解數(shù)據(jù)庫中數(shù)據(jù)的查詢方法和應(yīng)用。3. 學(xué)會各種查詢的異同及相互之間的轉(zhuǎn)換方法。內(nèi)容1:1. 查詢所有作者的作者號、姓名信息2. 查詢所有作者的姓名、作者號信息,并在每個作者的作者號前面顯示字符串“身份證號:”,表明顯示的信息是身份證信息3. 查詢在CA州的作者姓名和城市4. 查詢出版日期在1992.1.1-2000.12.31之間的書名和出版日期(查詢1991年出版的書)5. 查詢每個出版社出版的書6. 查詢某店銷售某書的數(shù)量7. 查詢有銷售記錄的所有書信息,包括書的編號、書名、類型和價格8. 查詢已銷售書的信息9. 顯示所有的書名(無銷售記錄的書也包括在內(nèi))10. 查詢已銷售書的信息(書號
10、、書名、作者等)11. 查詢所有出版商業(yè)(business)書籍的出版社的名稱目的2:1. 理解數(shù)據(jù)庫中數(shù)據(jù)的其他查詢方法和應(yīng)用;2. 學(xué)會各種查詢要求的實現(xiàn)。內(nèi)容2:在實驗1的基礎(chǔ)上,練習(xí)查詢語句的使用,包括計算列、求和、最大、最小值、各類選擇條件、字符匹配、分組和排序,體會各種查詢的執(zhí)行過程,為簡單綜合應(yīng)用打下良好的基礎(chǔ)。1. 查詢書名以T開頭或者出版社號為0877,而且價格大于16的書的信息。2. 按照類型的升序和價格的降序(在類型相同時)顯示書的信息(書名、作者、出版社、類型、價格)3. 查詢銷售量大于30的書名及銷售數(shù)量4. 查詢在2002.1.1到2002.10.31間,每本書的銷
11、售總額5. 查詢所有作者的所在城市和州名,要求沒有重復(fù)信息6. 計算多少種書已被訂價7. 查詢每本書的書名、作者及它的售書總量8. 計算所有書的平均價格9. 查詢價格最高的書的書名、作者及價格目的3:1. 加深對數(shù)據(jù)庫相關(guān)性質(zhì)的理解;2. 各種約束性理解;3. 學(xué)會數(shù)據(jù)庫中數(shù)據(jù)的更新的方法。內(nèi)容3:1. 參照以上各表給出的主鍵、外鍵設(shè)置的設(shè)置要求,在自己創(chuàng)建的表中進(jìn)行相應(yīng)的設(shè)置。2. 向authors表中插入一行作者信息(具體值自定)3. 數(shù)量超過100的商店增加10%的折扣4. 刪除2001.10.3的訂單5. 刪除1中所建立的索引6. 建立CA州作者所著書的視圖(包括作者號、姓名、所在州、
12、書名、價格、出版日期)7. 建立付款方式是現(xiàn)金(cash)的訂單視圖8. 建立CA州的所有商店的視圖目的4:1. 在查詢分析器中,練習(xí)使用IN、比較符、ANY或ALL等操作符進(jìn)行查詢。2. 練習(xí)使用EXISTS操作符進(jìn)行嵌套查詢操作內(nèi)容4:1. 在pubs數(shù)據(jù)庫的titleauthor和中,用IN謂詞查詢來自CA州(在authors表中)的作家的全部作品(title_id)和作家的代號(au_id)。2. 在pubs數(shù)據(jù)庫中,用比較運算符引出的子查詢找出在名稱為“Algodata Infosystems”的出版社所在城市中的作者的姓名(au_lname, au_fname)3. 在pubs數(shù)據(jù)
13、庫中的titles表中,查詢價格大于所有類型(TYPE)為“business”的圖書價格的書名(title)和價格(price)4. 在pubs數(shù)據(jù)庫的sales表中查找所有銷售量大于所有圖書平均銷售量avg(qty)的書的代號(title_id)及銷售量(qty)。5. 用帶有IN的嵌套查詢,查詢來自城市(city)為“London”的客戶所訂的訂單信息(customers和orders表)。6. 用帶有IN的嵌套查詢,查詢Northwind數(shù)據(jù)庫中的產(chǎn)品表(Products)中來自國家為“Germany” (在供應(yīng)商表(Suppliers)表中)的供貨商供應(yīng)的產(chǎn)品信息(包括Producti
14、d,Productname, categoryid, unitprice)。7. 使用EXISTS子查詢在Pubs數(shù)據(jù)庫titles 表及publishers表中查詢New Moon Books出版社所出版的圖書名稱(title)目的5:1. 分類匯總。內(nèi)容5:1. 找出pubs數(shù)據(jù)庫titles表中計算機(jī)類圖書中價格最高的圖書的價格。2. 查詢titles表中有幾類圖書。3. 按照州進(jìn)行分類,查找每個州有幾名作者。4. 要求按照出版商id進(jìn)行分類,查找每個出版商的書到目前為止的銷售額總和(ytd_sales)。5. 在pubs數(shù)據(jù)庫的titles表中,找出平均價格大于18美元的書的種類。6.
15、 在pubs數(shù)據(jù)庫的titles表中,找出最高價大于20美元的書的種類。7. 找出title_id和pub_name的對應(yīng)關(guān)系。8. 找出title_id, title和pub_name的對應(yīng)關(guān)系。9. 查詢每個作者的編號,姓名,所出的書的編號,并對結(jié)果排序。10. 從authors表中選擇state,city列,從publisher表中選擇state,city列,并把兩個查詢的結(jié)果合并為一個結(jié)果集,并對結(jié)果集按city列、state列進(jìn)行排序。11. 對上面的查詢語句作修改,保留所有重復(fù)的記錄。12. 顯示所有來自CA州的作家的全部作品和作家代號。(使用IN,和連接兩種方法)13. 查找由位
16、于以字母 B 開頭的城市中的任一出版商出版的書名:(使用exists和in兩種方法)一、簡單查詢學(xué)生選課數(shù)據(jù)1、列出全部學(xué)生的信息。2、列出信息系全部學(xué)生的學(xué)號及姓名。3、列出所有已被選修的選修課的課號。4、求c01號課成績大于80分的學(xué)生的學(xué)號及成績,并按成績由高到低列出。5、列出非信息系學(xué)生的名單。6、查詢成績在7080分之間的學(xué)生選課得分情況7、列出選修c01號課或c03號課的全體學(xué)生的學(xué)號和成績。8、列出所有95級學(xué)生的學(xué)生成績情況。9、列出成績?yōu)榭罩?或不為空值)的學(xué)生的學(xué)號和課號。10、求出所有學(xué)生的總成績。11、列出每個學(xué)生的平均成績。12、列出各科的平均成績、最高成績、最低成績
17、和選課人數(shù)。1 SELECT * FROM 學(xué)生2 SELECT 學(xué)號,姓名 FROM 學(xué)生 WHERE 專業(yè)=信息系3 SELECT DISTINCT 課號 FROM 選修課4 SELECT 學(xué)號,成績 FROM 選課 WHERE 課號=01 AND 成績>80 ORDER BY 成績 DESC5 方法一:SELECT 姓名 FROM 學(xué)生 WHERE 專業(yè)<>信息系方法二:SELECT 姓名 FROM 學(xué)生 WHERE NOT 專業(yè)=信息系方法三:SELECT 姓名 FROM 學(xué)生 WHERE 專業(yè)!=信息系6 方法一:SELECT * FROM 選課 WHERE 成績&
18、gt;=70 AND 成績<=80方法二:SELECT * FROM 選課 WHERE 成績 BETWEEN 70 AND 80不在此范圍內(nèi)的查詢:(注意寫出和以下語句等價的語句)SELECT * FROM 選課 WHERE 成績 NOT BETWEEN 70 AND 807 方法一:SELECT 學(xué)號,成績 FROM 選課 WHERE 課號=c01 OR 課號=c03方法二:SELECT 學(xué)號,成績 FROM 選課 WHERE 課號 IN (c01,c03)相反條件查詢:SELECT 學(xué)號,成績 FROM 選課 WHERE 課號 NOT IN (c01,c03)8 SELECT * F
19、ROM 選課 WHERE 學(xué)號 LIKE 95%SELECT * FROM 選課 WHERE 學(xué)號 LIKE 95_ _ _ _相反條件查詢:SELECT * FROM 選課 WHERE 學(xué)號 NOT LIKE 98%9 答案一:SELECT 學(xué)號,課號 FROM 選課 WHERE 成績 IS NULL答案二:SELECT 學(xué)號,課號 FROM 選課 WHERE 成績 IS NOT NULL10 SELECT SUM(成績) AS 總成績 FROM 選課11 SELECT 學(xué)號,AVG(成績) AS 平均成績 FROM 選課 GROUP BY 學(xué)號12 SELECT 課號,AVG(成績) AS
20、 平均成績,MAX(成績) AS 最高分,MIN(成績) AS 最低分,COUNT(學(xué)號) AS 選課人數(shù) FROM 選課 GROUP BY 課號目的4:2. 在查詢分析器中,練習(xí)使用IN、比較符、ANY或ALL等操作符進(jìn)行查詢。3. 練習(xí)使用EXISTS操作符進(jìn)行嵌套查詢操作請完成以下習(xí)題:14. 在pubs數(shù)據(jù)庫的titleauthor和中,用IN謂詞查詢來自CA州(在authors表中)的作家的全部作品(title_id)和作家的代號(au_id)。select title_id,au_idfrom titleauthorwhere au_id in (select au_id from
21、 authors where state='CA') 在pubs數(shù)據(jù)庫中,用比較運算符引出的子查詢找出在名稱為“Algodata Infosystems”的出版社所在城市中的作者的姓名(au_lname, au_fname)select au_lname, au_fnamefrom authors where city= (select city from publishers where pub_name='Algodata Infosystems')在pubs數(shù)據(jù)庫中的titles表中,查詢價格大于所有類型(TYPE)為“business”的圖書價格的書名(
22、title)和價格(price)select title,pricefrom titleswhere price>all (select price from titles where type='business')在pubs數(shù)據(jù)庫的sales表中查找所有銷售量大于所有圖書平均銷售量avg(qty)的書的代號(title_id)及銷售量(qty)。 select title_id ,qtyfrom saleswhere qty>all(select avg(qty)from sales)用帶有IN的嵌套查詢,查詢來自城市(city)為“London”的客戶所訂的訂
23、單信息(customers和orders表)。select *from orderswhere customerID in (select customerIDfrom customerswhere city='london')用帶有IN的嵌套查詢,查詢Northwind數(shù)據(jù)庫中的產(chǎn)品表(Products)中來自國家為“Germany” (在供應(yīng)商表(Suppliers)表中)的供貨商供應(yīng)的產(chǎn)品信息(包括Productid,Productname, categoryid, unitprice)。SELECT Productid,Productname, categoryid,u
24、nitpricefrom Productswhere Productid in(select supplierIDfrom Supplierswhere country='Germany')2、提高操作實驗練習(xí)使用EXISTS操作符進(jìn)行嵌套查詢操作。請完成以下習(xí)題:使用EXISTS子查詢在Pubs數(shù)據(jù)庫titles 表及publishers表中查詢New Moon Books出版社所出版的圖書名稱(title)select title from titles where exists (select * from publishers where pub_name='N
25、ew Moon Books')T-SQL高級查詢課堂練習(xí)及答案-練習(xí)1-找出pubs數(shù)據(jù)庫titles表中計算機(jī)類圖書中價格最高的圖書的價格。USE pubsGOSELECT max(price) FROM titleswhere type='popular_comp'GO-練習(xí)2-查詢titles表中有幾類圖書。USE pubsGOSELECT count(distinct type) FROM titlesGO-練習(xí)3-按照州進(jìn)行分類,查找每個州有幾名作者。USE pubsGOSELECT state, count(*) FROM authorsgroup by s
26、tateorder by 1GO-練習(xí)4-要求按照出版商id進(jìn)行分類,查找每個出版商的書到目前為止的銷售額總和(ytd_sales)。USE pubsGOSELECT pub_id, sum(ytd_sales) FROM titlesgroup by pub_idorder by 1GO-練習(xí)5-在pubs數(shù)據(jù)庫的titles表中,找出平均價格大于18美元的書的種類。USE pubsGOSELECT pub_id,avg(price) '平均價格' FROM titlesGROUP BY pub_idHAVING avg(price) > 18GO-練習(xí)6-在pubs數(shù)
27、據(jù)庫的titles表中,找出最高價大于20美元的書的種類。USE pubsGOSELECT type,max(price) '平均價格' FROM titlesGROUP BY typeHAVING max(price) > 20GO-練習(xí)7-找出title_id和pub_name的對應(yīng)關(guān)系。Use pubsgoSelect titles.title_id, publishers.pub_nameFrom titles JOIN publishersON titles.pub_id=publishers.pub_idGo-練習(xí)8-找出title_id, title和pub
28、_name的對應(yīng)關(guān)系。Use pubsgoSelect titles.title_id, titles.title, publishers.pub_nameFrom titles JOIN publishersON titles.pub_id=publishers.pub_idGo-練習(xí)9-查詢每個作者的編號,姓名,所出的書的編號,并對結(jié)果排序。Use pubsgoSelect authors.au_id, authors.au_fname + '.' + authors.au_lname 'name', titleauthor.title_idFrom authors JOIN titleauthorON authors.au_id=titlea
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年鎮(zhèn)江市高等??茖W(xué)校高職單招職業(yè)適應(yīng)性測試備考試題及答案詳細(xì)解析
- 2026年黑河五大連池市農(nóng)村中心敬老院公開招聘政府編外用工人員8人參考考試題庫及答案解析
- 2026年新疆交通職業(yè)技術(shù)學(xué)院單招綜合素質(zhì)筆試參考題庫含詳細(xì)答案解析
- 2026年鶴崗市向陽區(qū)公開招聘公益性崗位人員34人筆試模擬試題及答案解析
- 2026年山東藝術(shù)設(shè)計職業(yè)學(xué)院單招綜合素質(zhì)筆試備考題庫含詳細(xì)答案解析
- 2026年重慶安全技術(shù)職業(yè)學(xué)院單招職業(yè)技能考試參考題庫含詳細(xì)答案解析
- 2026年山西華澳商貿(mào)職業(yè)學(xué)院單招綜合素質(zhì)考試模擬試題含詳細(xì)答案解析
- 2026北京通州區(qū)消防救援支隊第一批次區(qū)級政府專職消防員招錄41人考試重點題庫及答案解析
- 2026年青島濱海學(xué)院單招綜合素質(zhì)筆試備考試題含詳細(xì)答案解析
- 2026年遼寧機(jī)電職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試模擬試題及答案詳細(xì)解析
- 粉塵職業(yè)?。▔m肺病、皮膚?。┪:?yīng)急預(yù)案
- 2026年江蘇蘇北四市高三一模高考英語試卷試題(答案詳解)
- 實驗室安全培訓(xùn)P53
- 2026年安徽省江淮糧倉融資擔(dān)保有限公司(籌)招聘考試參考試題及答案解析
- 廣東省廣州市海珠區(qū)2026年九年級上學(xué)期期末物理試題附答案
- 2026中好建造(安徽)科技有限公司招聘45人筆試備考試題及答案解析
- 2025年輔警面試考試復(fù)習(xí)題庫目及解析答案
- 北師大版三年級數(shù)學(xué)(上)期末家長會-三載深耕學(xué)有所成【課件】
- 風(fēng)機(jī)安全鏈課件
- 2025年企業(yè)設(shè)備故障處理手冊
- 腸造瘺術(shù)后護(hù)理查房
評論
0/150
提交評論