數(shù)據(jù)庫實驗SQL語言的嵌套查詢和組合查詢_第1頁
數(shù)據(jù)庫實驗SQL語言的嵌套查詢和組合查詢_第2頁
數(shù)據(jù)庫實驗SQL語言的嵌套查詢和組合查詢_第3頁
數(shù)據(jù)庫實驗SQL語言的嵌套查詢和組合查詢_第4頁
數(shù)據(jù)庫實驗SQL語言的嵌套查詢和組合查詢_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

實驗實習(xí)名SQL 語言的嵌套查詢和組合查詢指導(dǎo)教師考核成績課程名稱數(shù)據(jù)庫原理課程編號實驗實習(xí)地點完成日期2017-04-23學(xué)生姓名學(xué)生學(xué)號學(xué)院專業(yè)所在班級教師評語教師簽名: 年 月 日(以下為參考內(nèi)容,具體內(nèi)容要求由課程在實驗實習(xí)指導(dǎo)書中規(guī)定。)一、實驗實習(xí)目的及要求(一)、實驗?zāi)康?數(shù)據(jù)查詢語言指對數(shù)據(jù)庫中的數(shù)據(jù)查詢、統(tǒng)計、分組、排序等操作。查詢語 句可以分為嵌套查詢和組合查詢等。本次實驗了解 SQL 語言的 SELECT 語句對數(shù)據(jù)的查詢,學(xué)會在 Navicat forMySQL 中用 SELECT 語句對表中的數(shù)據(jù)進行嵌套查詢和組合查詢。 (二)、實驗要求 1、實驗前:預(yù)習(xí)實驗內(nèi)容,學(xué)習(xí)相關(guān)知識。 2、實驗中:按照實驗內(nèi)容要求進行實驗,實驗時注意每種 SQL 語句的基本命令 及各個關(guān)鍵字的含義,做好實驗記錄。 3、實驗后:分析實驗結(jié)果,總結(jié)實驗知識,得出結(jié)論,按格式寫出實驗報告。 4、在整個實驗過程中,要獨立思考、獨立按時完成實驗任務(wù),不懂的要虛心向 教師或同學(xué)請教。 5、要求按指定格式書寫實驗報告,且報告中應(yīng)反映出對本次實驗的總結(jié),下次 實驗前交實驗報告。 二、實驗實習(xí)設(shè)備(環(huán)境)及要求(軟硬件條件) 硬件:已聯(lián)網(wǎng)的筆記本一臺 軟件:Navicat for MySQL5.7三、實驗實習(xí)內(nèi)容與步驟 (一).實驗內(nèi)容 1.用 SELECT 語句對表進行嵌套查詢操作,一個 SelectFromWhere 語句 稱為一個查詢塊,將一個查詢塊嵌套在另一個查詢塊的 Where 子句或 Having 短 語的條件中的查詢,就是嵌套查詢。主要有使用 In 操作符、Exist 操作符、使 用比較運算符的嵌套查詢方式。 2.用 SELECT 語句對表進行集合查詢操作,將 SELECT 語句的查詢結(jié)果集再進 行集合運算就構(gòu)成了 SQL 的集合查詢。集合查詢操作符有 Union(并操作)、 Intersect(交操作)和 Minus(差操作)。目前 MySQL 僅支持 Union(并操作)。 (二).實驗步驟 執(zhí)行以下內(nèi)容: 1.啟動 Navicat for MySQL,在 MySQL 新建連接中完成連接參數(shù)配置。 2.登錄到本地數(shù)據(jù)庫服務(wù)器后,連接到 test 數(shù)據(jù)庫上。 3.用 Create Table 建立 Student 表,表結(jié)構(gòu)如下所示:屬性名類型長度SNOVarchar20NameVarchar10AgeIntegerCollegeVarchar304.用 Create Table 建立 Course 表,表結(jié)構(gòu)如下所示:字段名類型長度CourseIDVarchar15CourseNameVarchar30CourseBeforeIDVarchar155.用 Create Table 建立 Choose 表,表結(jié)構(gòu)如下所示:字段名類型長度SNOVarchar20CourseIDVarchar30ScoreDECIMAL5,26.用 INSERT 語句向 Student 表中插入 3 個元組:SNONameAgeCollegeS00001張三20計算機學(xué)院S00002李四19通信學(xué)院S00003王五21計算機學(xué)院7.用 INSERT 語句向 Course 表中插入 3 個元組:CourseIDCourseNameCourseBeforeIDC1計算機引論空值(NULL)C2C 語言C1C3數(shù)據(jù)結(jié)構(gòu)C2 8.用 INSERT 語句向 Choose 表中插入 7 個元組 SNOCourseIDScoreS00001C195S00001C280S00001C384S00002C180S00002C285S00003C178S00003C3709.用 SELECT 的存在量詞 EXISTS,查詢與“張三”在同一個學(xué)院學(xué)習(xí)的學(xué)生信息。10.用 SELECT 語句的嵌套查詢,查詢選修 C1 課程的成績低于“張三”的學(xué)生的 學(xué)號和成11.用 SELECT 語句的組合查詢(UNION),查詢選修了 C1 課程或者選修了 C3 課程 的學(xué)生號。 12.用 SELECT 語句的組合查詢(UNION)與 DISTINCT 短語,查詢選修了 C1 課程或 者選修C3課程的學(xué)生學(xué)號,并取消重復(fù)的數(shù)據(jù)。 四、實驗實習(xí)過程或算法(源程序、代碼) 1. 用 Create Table 建立 Student 表代碼: CREATE TABLE Student(SNO varchar(20),Name varchar(10),Age integer,Collage varchar(30); 2. 用 Create Table 建立 Course 表代碼 CREATE TABLE Course(CourseID varchar(15),CourseName varchar(30),CourseBeforeID varchar(15); 3. .用 Create Table 建立 Choose代碼 CREATE TABLE Choose(SNO varchar(20),CourseID varchar(30),Score DECIMAL(5.2); 4.用 INSERT 語句向 Student 表中插入 3 個元組代碼 INSERT INTO Student VALUE(S00001,張三,20,計算機學(xué)院);I NSERT INTO Student VALUE(S00002,李四,19,通信學(xué)院);INSERT INTO Student VALUE(S00003,王五,21,計算機學(xué)院); 5 .用 INSERT 語句向 Course 表中插入 3 個元組代碼 INSERT INTO Course VALUE(C1,計算機引論,NULL);INSERT INTO Course VALUE(C2,C語言,C1);INSERT INTO Course VALUE(C3,數(shù)據(jù)結(jié)構(gòu),C2); 6.用 INSERT 語句向 Choose 表中插入 7 個元組代碼INSERT INTO Choose VALUE(S00001,C1,95);INSERT INTO Choose VALUE(S00001,C2,80);INSERT INTO Choose VALUE(S00001,C3,84);INSERT INTO Choose VALUE(S00002,C1,80);INSERT INTO Choose VALUE(S00002,C2,85);INSERT INTO Choose VALUE(S00003,C1,78);INSERT INTO Choose VALUE(S00003,C3,70); 7. 用 SELECT 的存在量詞 EXISTS,查詢與“張三”在同一個學(xué)院學(xué)習(xí)的學(xué)生信息代碼及運行結(jié)果 代碼:select *from Student S1where EXISTS (select * from Student S2 where S2.College = S1.College and S2.Name = 張三)運行結(jié)果:8.用 SELECT 語句的嵌套查詢,查詢選修 C1 課程的成績低于“張三”的學(xué)生的 學(xué)號和成績。 代碼:select SNO,Scorefrom choosewhere CourseID = C1 and Scoreany( select Score from student,choose where student.SNO = choose.SNO and CourseID = C1 and Name= 張三 )運行結(jié)果: 9. 用 SELECT 語句的組合查詢(UNION),查詢選修了 C1 課程或者選修了 C3 課程 的學(xué)生學(xué)號。 代碼:select SNOfrom choosewhere courseID = C1union select SNOfrom choosewhere courseID = C3運行結(jié)果:10. 用 SELECT 語句的組合查詢(UNION)與 DISTINCT 短語,查詢選修了 C1 課程或 者選修了 C3 課程的學(xué)生學(xué)號,并取消重復(fù)的數(shù)據(jù)。 代碼:select distinct SNOfrom studentwhere SNO in (select SNO from choose where CourseID = C1)union select distinct SNOfrom studentwhere SNO in (select SNO from choose where CourseID = C3)運行結(jié)果:DQL補充倉庫管理系統(tǒng)要求:1、倉庫設(shè)備可自己設(shè)定(比如郵電大學(xué)資產(chǎn)處的倉庫,倉庫里有各種型號電腦)2、定義基礎(chǔ)表(表結(jié)構(gòu)里面的數(shù)據(jù)類型自己定義)3、給表里面輸入一些基礎(chǔ)數(shù)據(jù)(自己設(shè)定)4、查詢倉庫里面設(shè)備的總類型量5、查詢倉庫某一入庫時間(某一天)的所有入庫設(shè)備6、查詢倉庫的設(shè)備出庫某一領(lǐng)取人(可模糊查詢)在某一出庫時間范圍的設(shè)備情況7、查詢出現(xiàn)有庫存表中已經(jīng)是小于等于最小庫存的設(shè)備號及名稱,以準備采購。8、查詢某一部門需求的某一設(shè)備在庫存里面是否夠該部門需求數(shù)量?9、根據(jù)某一設(shè)備庫存總數(shù)已經(jīng)低于最小庫存數(shù)量警戒線的設(shè)備和最大庫存的上限,并自動查詢生成出該設(shè)備的設(shè)備采購計劃表(包括采購計劃表的設(shè)備號、現(xiàn)有總庫存數(shù)、最大庫存、該購買數(shù)量的信息)對各個表插入代碼:表一insert into shebeibiao values (001,微星);insert into shebeibiao values (002,宏碁);insert into shebeibiao values (003,外星人);表二insert into sbrkb values(0001,20170420,微星官方旗艦店,10010,20,5000,旺旺);insert into sbrkb values(0002,20170421,宏碁官方旗艦店,10086,20,6000,康康);insert into sbrkb values(0003,20170422,外星人官方旗艦店,10000,20,7000,霆霆);表三insert into sbckb values (001,團委,20170420,已出庫,小喬,15,小曹,辦公);insert into sbckb values (002,學(xué)生會,20170421,已出庫,大喬,11,小劉,辦公);insert into sbckb values (003,物業(yè),20170422,已出庫,小周,6,小孫,辦公);表四insert into xykcb values(001,20,40,5);insert into xykcb values(002,12,20,2);insert into xykcb values(003,5,15,1);表五insert into bmxqb values(001,計算機學(xué)院,9,20170419,20170423);insert into bmxqb values(002,傳媒學(xué)院,6,20170420,20170424);insert into bmxqb values(003,馬克思學(xué)院,3,20170421,20170425);表六insert into sbcgjhb values(001,12,20,0,微星官方旗艦店,5000,null);insert into sbcgjhb values(002,15,30,5,宏碁官方旗艦店,6000,20170424);insert into sbcgjhb values(003,15,25,3,外星人官方旗艦店,7000,20170424);1. 查詢倉庫里面設(shè)備的總類型量代碼代碼:selectcount(shebeimingcheng)fromshebeibiao運行結(jié)果:2. 查詢倉庫某一入庫時間(20170306)的所有入庫設(shè)備代碼及運行結(jié)果代碼:select shebeimingcheng from shebeibiaowhere shebeihao in( select shebeihao from sbrkb where rukushijian = 20170306);)運行結(jié)果:3. 查詢倉庫的設(shè)備出庫某一領(lǐng)取人(可模糊查詢)在某一出庫時間范圍的設(shè)備情況代碼及運行結(jié)果代碼:selectlingqurenfromsbckbwherechukushijianlike201704%;;運行結(jié)果:4. 查詢出現(xiàn)有庫存表中已經(jīng)是小于等于最小庫存的設(shè)備號及名稱,以準備采購代碼及運行結(jié)果代碼:select shebeibiao.*from xykcb,shebeibiaowhere xykcb.shebeihao = shebeibiao.shebeihao and xianyoukucunzongshu=zuixiaokucun運行結(jié)果:5. 查詢某一部門需求的某一設(shè)備在庫存里面是否夠該部門需求數(shù)量?代碼:selectbmxqb.bumenmingcheng,xykcb.xianyoukucunzongshu,bmxqb.xuyaoshuliangfromxykcb,bmxqbwherexykcb.shebeihao=bmxqb.shebeihao;運行結(jié)果:6.

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論