第三章SQL語言.ppt_第1頁
第三章SQL語言.ppt_第2頁
第三章SQL語言.ppt_第3頁
第三章SQL語言.ppt_第4頁
第三章SQL語言.ppt_第5頁
已閱讀5頁,還剩95頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、2020/8/3,1,1,1,第三章,關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL(2),2020/8/3,2,3.4多表查詢,同時與多個表有關(guān)的查詢稱為多表查詢多表查詢,二、2020/8/3、3、3.4.1連接查詢,查詢包含兩個或多個表,連接查詢包含比較運(yùn)算符=、=、 將多個表(=、Betweenand等)合并成一個新的整體進(jìn)行查詢。 用于連接兩個表的條件是連接條件或連接謂詞、2020/8/3,4、連接查詢的一般格式: 比較運(yùn)算符:=、 BETWEEN . AND .2020/8/等值連接等于或大于兩個表、2020/8/3,7、7、7、等效連接和自然連接示例:36查詢各學(xué)生的基本信息,選擇課程。 SELECT

2、Student . *、SC . * FROM Student、SC Where Student.Sno=SC.Sno、2020/8/3、8, 李勇男20 CS 06001 1 92 06001李勇男20 CS 06001 2 85 06001李勇男20 CS 06001 3 88 06002劉晨女19 is 中的組合圖層性質(zhì)變更選項。 自然連接是等值連接的特殊情況,只需刪除目標(biāo)列中的兩個重復(fù)屬性列中的一個,即可獲得自然連接。 目標(biāo)列是要查詢的列。 2020/8/3,12,用自然連接完成上面的查詢。 SnO,Sname,Ssex,Sage,Sdept,Cno,選擇條目。 中的組合圖層性質(zhì)變更選

3、項。 推測從上面的句子中刪除WHERE子句會得到什么樣的結(jié)果。 2020/8/3、13、37詢問選擇1號課程的學(xué)生的學(xué)號、姓名、性別、1號課程的考試分?jǐn)?shù)。 SELECT Student.Sno、Sname、Ssex、Grade FROM Student、scwherestudent.SnO=student.snoandcno=1、SELECT Student.Sno、sname from SnO 讓我們看看SELECT Student.Sno、Sname FROM Student和scwherestudent.SnO=sc.snoandcno=1和grade 60在哪里有問題。2020/8/3

4、、16、嵌套查詢:多表查詢除了連接之外,還有一個稱為嵌套查詢的查詢。 嵌套查詢表示子查詢存在于查詢語句的WHERE或HAVING子句中。 也就是說,查詢語句也嵌套查詢,因此名稱嵌套查詢。2020/8/3、17、例40調(diào)查馬尾辮同一學(xué)部學(xué)習(xí)的學(xué)生的學(xué)號、名字、性別。SELECT Sno、Sname、ssexfromstudentwheresdeptin (selectsdeptfromstudentwheresname=馬尾辮)、2020/8/3、SELECT Sno、snamefromstudde selectsnofromscwherecno=1和grade (選擇avg (grade )

5、fromscwherecno=1),插入2020/8/3、20、3 21、3.4.1數(shù)據(jù),SQL插入單個元組(1、2020/8/3、23、例1新生的注冊信息(學(xué)號: 090512102; 姓名:陳冬性別:男所在系:計算機(jī)系年齡: 18歲)被添加到Student表。插入時間(SnO、Sname、Ssex、Sdept、Sname )值(090512102、陳冬、男、校正計算機(jī)系統(tǒng)、18 )。 insertintostudentvalues (090512102,陳冬,男,電腦系統(tǒng),18 ),2020/8/3,25,插入單一記錄規(guī)定:into子句指定插入資料的表格,屬性欄的屬性為: 指定與表定義的順

6、序匹配的子屬性列:插入的元組包含其自適應(yīng)屬性列中null值VALUES子句提供的值必須與INTO子句匹配的值的個數(shù)類型、2020/8/3、26、2 .插入子查詢結(jié)果并預(yù)先插入記錄子查詢的其功能是指定子查詢的結(jié)果的表、2020/8/3、27、例2 .將各系的系名及其學(xué)生數(shù)插入新的表DeptCount中。 (1)制作表DeptCount (系名、人數(shù)) (2)在Student表中檢測各系的系名、學(xué)生數(shù),并將檢測結(jié)果插入新制作的表中;2020 (1)創(chuàng)建表sdee 主密鑰、人數(shù)int (2)插入設(shè)置計數(shù)(系列名稱、人數(shù))。 實(shí)際上,SQL SERVER的專用語言T-SQL不需要那么復(fù)雜。 SQL S

7、ERVER不需要預(yù)先用SQL語言創(chuàng)建空表,只需執(zhí)行以下語句,SQL SERVER就會積極創(chuàng)建新的表StudentCount,并將查詢的數(shù)據(jù)插入該表: 2020計數(shù)(SnO )人數(shù)intostudentcountfromstudentgroupbysdept注意: studentcount表不是預(yù)先創(chuàng)建的,而是在執(zhí)行語句之后自動創(chuàng)建SQL SERVER。 2020/8/3,31,再舉一個例子。 例4將課程1的選擇歷史記入新的表SC1。 可通過標(biāo)準(zhǔn)SQL、T-SQL兩種方法實(shí)現(xiàn)。 標(biāo)準(zhǔn)SQL需要兩個獨(dú)立的SQL語句。 T-SQL只能完成一個SQL語句。2020/8/3、32,用標(biāo)準(zhǔn)SQL編寫:第一

8、步:創(chuàng)建新表sc1:創(chuàng)建表sc1(SnO char (9) )、cnochaar,以保存第一課程的選擇信息。 33,第二步:將從SC表中找到的1號路線的選擇信息插入表SC1中:Insert into SC1(Sno,Cno,Grade) Select Sno,Cno, gradefromscwhh然后使用SQL SERVER數(shù)據(jù)庫管理系統(tǒng)的專用語言T-SQL實(shí)現(xiàn)相同的功能:2020/8/3,35,使用SQL SERVER的T-SQL語句實(shí)現(xiàn): selectintosc1fromscwherre功能修改指定表中滿足WHERE子句條件的元組(記錄)、2020/8/3、37,修改表中的數(shù)據(jù)要修改某元

9、組(記錄)的值多個元組(記錄)的值子查詢Update Student Set Sdept=機(jī)械系wheresno=y12311125、2020/8/3、39、例6提高了“數(shù)據(jù)庫開發(fā)”這一課程的單位1分。 updatecoursesetccredit=c credit1where cname=數(shù)據(jù)庫開發(fā),2020/8/3,40,2 .修改多個元組的值,例7新年到來,將所有學(xué)生的年齡增加到1歲,updatestuupdatescsetgrade=0where cno=1,2020/8/3,42,3 .如果無法確定要修改的元組(記錄)是什么,則需要在子查詢中知道磁帶查詢的修改語句。 此類修改語句稱為

10、磁帶查詢修改語句。2020/8/3、43、例9禁用大氣物理這門課程的考試成績,使選擇此課程的成績?yōu)榱惴帧?updatescsetgrade=0wherecnoin (selectcnofromcoursewherecname=大氣物理)、2020/8/3、44、例10修正Y12311101, updatescsetgrade=80 where SnO=y 1231101 and cno=(選擇cnofromcoursewherecname=數(shù)據(jù)庫)、2020/8/3、2020/8/3、46、updatescsetgrade “=”可以變更為“IN”嗎? 2020/8/3、47、3.4.3刪除數(shù)

11、據(jù)、DELETE FROM WHERE 功能刪除指定表中滿足WHERE子句條件的元組WHERE子句指定要刪除的元組缺省情況下意味著修改表中的所有元組。 2020/8/3,48,SQL語言也有三種刪除方法:刪除一個元組的值(即刪除一行記錄)。請從數(shù)據(jù)庫中刪除此課程的信息。 deletefromcoursewherecno=c110、2020/8/3、50、1.刪除元組的值。 例13學(xué)號Y12311188的學(xué)生退學(xué)了。 請從數(shù)據(jù)庫中刪除學(xué)生表中登記的同學(xué)的登記信息。 deletefromstudentwhersno=y 1231188,2020/8/3,51,2 .刪除多個元組的值。 例14刪除所有課程的選擇記錄。 DELETE FROM SC,2020 deletefromscwherecno=2,2020/8/3,53,3 .通過子查詢確定要刪除的記錄,示例16刪除芙蓉姐姐的選定科目記錄,deletefromscwheresno=。 例17刪除數(shù)據(jù)結(jié)構(gòu)的選擇記錄。 deletefromscw

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論