欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      SQL語言數(shù)據(jù)查詢操作

      時(shí)間:2019-05-14 00:57:36下載本文作者:會(huì)員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《SQL語言數(shù)據(jù)查詢操作》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《SQL語言數(shù)據(jù)查詢操作》。

      第一篇:SQL語言數(shù)據(jù)查詢操作

      實(shí)驗(yàn)三 SQL語言——數(shù)據(jù)查詢操作

      一、實(shí)驗(yàn)時(shí)間

      二、實(shí)驗(yàn)地點(diǎn):317室

      三、實(shí)驗(yàn)條件與環(huán)境

      1. 通用PC機(jī)

      2. PC機(jī)必須安裝Windows 2000系列、Windows XP系列或Windows NT操作系統(tǒng)平臺(tái)

      3. PC機(jī)還須安裝Microsoft SQL Server 2000 任意一版本(個(gè)人版、標(biāo)準(zhǔn)版、企業(yè)版)

      4. 最好有一臺(tái)公用的SQL Server 2000 服務(wù)器

      四、實(shí)驗(yàn)?zāi)康?. 通過上機(jī)實(shí)驗(yàn)進(jìn)一步加深對SQL查詢語句的基本語法格式的掌握

      2. 通過上機(jī)實(shí)驗(yàn)掌握單表查詢的實(shí)現(xiàn)過程

      3. 通過上機(jī)實(shí)驗(yàn)掌握多表關(guān)聯(lián)查詢的實(shí)現(xiàn)過程

      4. 通過上機(jī)實(shí)驗(yàn)掌握嵌套查詢的實(shí)現(xiàn)過程

      5. 通過上機(jī)實(shí)驗(yàn)掌握集函數(shù)與謂詞在Select語句中的使用

      6. 通過上機(jī)實(shí)驗(yàn)加深了解Select語句與關(guān)系代數(shù)運(yùn)算(如選擇、投影、連接、除法等)兩者之間的聯(lián)系與區(qū)別

      五、實(shí)驗(yàn)要求:

      1. 本實(shí)驗(yàn)所有實(shí)驗(yàn)內(nèi)容要求在規(guī)定時(shí)間(2課時(shí))內(nèi)完成2. 實(shí)驗(yàn)內(nèi)容中涉及到的各查詢操作均通過SQL語言來實(shí)現(xiàn)

      3.實(shí)驗(yàn)完成后需要書寫實(shí)驗(yàn)報(bào)告

      六、實(shí)驗(yàn)內(nèi)容:

      1.查詢?yōu)楣こ蘆1供應(yīng)零件的供應(yīng)商號(hào)碼SNO

      2.查詢?yōu)楣こ蘆1供應(yīng)零件P1的供應(yīng)商號(hào)碼SNO

      3.查詢?yōu)楣こ蘆1供應(yīng)紅色零件的供應(yīng)商號(hào)碼SNO

      4.查詢沒有使用天津供應(yīng)商生產(chǎn)的零件并且當(dāng)前工程所使用零件的顏色全部為紅色的工程號(hào)JNO

      5.查詢至少選用了供應(yīng)商S1所供應(yīng)的全部零件的工程號(hào)JNO

      6.找出所有供應(yīng)商的名稱和所在城市

      7.找出所有零件的名稱、顏色和重量

      8.找出使用供應(yīng)商S1所供應(yīng)零件的工程號(hào)碼

      9.找出工程項(xiàng)目J2使用的各種零件的名稱及其重量

      10.找出上海廠商供應(yīng)的所有零件號(hào)碼

      11.找出使用上海產(chǎn)的零件的工程名稱

      12.找出沒有使用天津產(chǎn)的零件的工程號(hào)碼

      13.找出重量最輕的紅色零件的零件編號(hào)PNO

      14.找出供應(yīng)商與工程所在城市相同的供應(yīng)商提供的零件號(hào)碼

      15.找出所有這樣的一些<CITY,CITY,PNAME>三元組,使得第一個(gè)城市的供應(yīng)商為第二個(gè)城市的工程供應(yīng)零件的名稱為PNAME

      16.重復(fù)第15題,但不檢索兩個(gè)CITY值相同的三元組

      17.找出供應(yīng)商S1為工程名中含有“廠”字的工程供應(yīng)的零件數(shù)量總和

      18.找出為工程供應(yīng)零件的總數(shù)量不低于500的供應(yīng)商號(hào)碼及供應(yīng)總數(shù)量,結(jié)果按供應(yīng)商號(hào)碼分類并且按供應(yīng)總數(shù)量降序排列

      七、實(shí)驗(yàn)總結(jié):

      數(shù)據(jù)查詢是一種極為重要的面向數(shù)據(jù)庫的數(shù)據(jù)操縱方式。實(shí)驗(yàn)完成后,請同學(xué)們總結(jié)一下SELECT語

      句實(shí)現(xiàn)各種類型查詢?nèi)蝿?wù)的一般過程和操作實(shí)現(xiàn)方法,并對利用SELECT語句實(shí)現(xiàn)各類查詢?nèi)蝿?wù)的解題規(guī)律與方法作一總結(jié)。

      第二篇:SQL查詢語言

      《SQL查詢語言》教學(xué)設(shè)計(jì)

      一、教學(xué)目標(biāo)分析

      認(rèn)知目標(biāo)

      學(xué)習(xí)SQL查詢語言的使用方法。

      掌握SQL語言當(dāng)中的SELECT語句

      能力目標(biāo)

      培養(yǎng)學(xué)生應(yīng)用查詢語句查詢數(shù)據(jù)的應(yīng)用能力

      情感目標(biāo)

      體驗(yàn)SQL語言查詢方法

      主動(dòng)將數(shù)據(jù)庫管理信息的思想、方法創(chuàng)造性地應(yīng)用到生活、學(xué)習(xí)之中。

      二、教學(xué)內(nèi)容分析

      課前需要為學(xué)生準(zhǔn)備名為SCHOOL數(shù)據(jù)庫文件,里面放著名為CLASS的表,供學(xué)生練習(xí)使用。提供這個(gè)數(shù)據(jù)庫文件可以避免學(xué)生在建立表以及表中錄入記錄上花費(fèi)太多的時(shí)間,而把重點(diǎn)放在對本節(jié)內(nèi)容的學(xué)習(xí)上,可以讓教師更好地進(jìn)行目標(biāo)調(diào)控,做到有的放矢。這個(gè)數(shù)據(jù)庫文件放置于網(wǎng)絡(luò)共享文件夾中,并將其快捷方式置于學(xué)生機(jī)的桌面上。教學(xué)重點(diǎn):

      1、使用“在設(shè)計(jì)視圖中創(chuàng)建查詢”。

      2、SQL查詢語言的格式。

      教學(xué)難點(diǎn):

      運(yùn)行、調(diào)試SQL命令。

      解決措施:

      通過老師講解、演示及設(shè)置的任務(wù),讓學(xué)生在學(xué)習(xí)的過程中,自己動(dòng)手,以不斷解決問題為手段,有機(jī)結(jié)合各種知識(shí),以任務(wù)驅(qū)動(dòng)的方式發(fā)展能力,一步步完成學(xué)習(xí)任務(wù)。

      三、學(xué)生學(xué)習(xí)狀態(tài)分析

      本課的教學(xué)對象是大二的學(xué)生,由于學(xué)生的理論知識(shí)薄弱,加上數(shù)據(jù)庫比較抽象,比較難理解的特點(diǎn),從而造成學(xué)生對數(shù)據(jù)庫的認(rèn)識(shí)還很模糊。學(xué)生在本節(jié)課之前,已經(jīng)掌握數(shù)據(jù)庫和表的創(chuàng)建、打開及表中輸入、修改記錄的方法,初步掌握SQL的一些基本操作,在此基礎(chǔ)上,如何學(xué)會(huì)在數(shù)據(jù)庫眾多表中查詢記錄變得至關(guān)重要了,所以為了學(xué)生更好地掌握這一點(diǎn)知識(shí)點(diǎn),應(yīng)廣泛調(diào)動(dòng)他們的學(xué)習(xí)興趣,增強(qiáng)學(xué)習(xí)的主動(dòng)性。

      四、教學(xué)策略

      職業(yè)技術(shù)學(xué)院課程本身的特點(diǎn)、知識(shí)及技能的傳授應(yīng)以典型“任務(wù)”為主,創(chuàng)造學(xué)生自主探究學(xué)習(xí)的平臺(tái),學(xué)生在教師的指導(dǎo)下帶著任務(wù)通過實(shí)際操作、探究學(xué)習(xí)等方式,逐步完成任務(wù)。

      五、教學(xué)過程

      合理安排教學(xué)過程是教學(xué)成功的關(guān)鍵。因此,我把教學(xué)過程分為“情境感知,揭示課題——任務(wù)驅(qū)動(dòng),講授新知——課堂小結(jié),鞏固新知”三部分。

      (一)情境感知,揭示課題

      為了讓同學(xué)們對自己班級(jí)同學(xué)的情況有所了解,我們?nèi)绾魏啽愕夭樵兡??我們可以通過輸入一些命令解決問題。這些命令就是我們這節(jié)課所要學(xué)習(xí)的SQL查詢語言。設(shè)計(jì)思路:

      SQL所包含的數(shù)據(jù)具有一定的規(guī)模,并且能快速地從眾多表中查詢到某個(gè)同學(xué)的情況,讓學(xué)生體會(huì)到數(shù)據(jù)庫在現(xiàn)實(shí)生活中的應(yīng)用。

      (二)任務(wù)驅(qū)動(dòng),講授新知

      1. 如何在SQL中使用查詢命令?

      任務(wù)一:

      在SCHOOL數(shù)據(jù)庫的CLASS表中查詢所有的記錄

      Select * from class

      1)步驟:略

      2)分析剛才寫的查詢命令:

      SELECT:表示這是一個(gè)查詢語句

      *:表示顯示出符合條件記錄的所有字段內(nèi)容,如果在這輸入的是一些逗號(hào)分隔的字段名,則查詢結(jié)果只顯示響應(yīng)字段的內(nèi)容。

      FROM:表示從哪個(gè)表里查詢。

      3)寫SQL命令時(shí)應(yīng)注意的事項(xiàng):

      命令必須是英文的半角字母

      字符型數(shù)據(jù)要用英文的單引號(hào)包含起來。

      設(shè)計(jì)思路:

      這既是課堂重點(diǎn)也是難點(diǎn),通過兩個(gè)層次推進(jìn)的設(shè)疑,教師適當(dāng)?shù)乩斫?、演示,使學(xué)生對SQL查詢語言已消除了陌生感,并有了一定的理解。

      2. 嘗試練習(xí)

      任務(wù)二:

      查詢表中頭三條記錄

      通過本例講解讓學(xué)生掌握TOP關(guān)鍵字的用法

      任務(wù)三:

      查詢姓名和年齡兩列數(shù)據(jù)

      通過本例講解讓學(xué)生掌握部分字段內(nèi)容的查詢

      任務(wù)四:

      查詢年齡大于等于17而小于等于19的數(shù)據(jù)

      通過本例講解,讓學(xué)生掌握比較運(yùn)算符和邏輯運(yùn)算符的應(yīng)用,以及另一種方法BETWEEN…AND…關(guān)鍵字的用法

      任務(wù)五:

      查詢健康狀況為良好的所有數(shù)據(jù)

      通過本例講解,讓學(xué)生掌握WHERE關(guān)鍵字的用法

      任務(wù)六:

      查詢姓李的學(xué)生所有數(shù)據(jù)

      通過本例講解,讓學(xué)生掌握LIKE關(guān)鍵字的用法

      任務(wù)七:

      查詢健康狀況為良好或一般的數(shù)據(jù)

      通過本例講解,讓學(xué)生掌握IN關(guān)鍵字的用法

      任務(wù)八:

      查詢中文成績及格的數(shù)據(jù)

      通過本例講解,讓學(xué)生掌握比較運(yùn)算符的應(yīng)用

      任務(wù)九:

      查詢英語和中文的總成績

      通過本例講解,讓學(xué)生掌握為派生列起別名的方法

      任務(wù)十:

      學(xué)生練習(xí):

      查詢一班各位同學(xué)的英語、中文成績總分。

      任務(wù)十一:

      將中文成績俺降序排列(升序asc)

      通過本例講解,讓學(xué)生掌握ORDER BY關(guān)鍵字的應(yīng)用

      任務(wù)十二:

      查詢一班同學(xué)中文成績排名狀況(按降序)

      通過本例講解,讓學(xué)生掌握WHERE條件和ORDER BY關(guān)鍵字綜合應(yīng)用

      任務(wù)十三

      查詢各班中文總成績

      通過本例講解,讓學(xué)生掌握聚合函數(shù)和GROUP BY關(guān)鍵字的應(yīng)用

      任務(wù)十四

      查詢一班中文總成績

      通過本例講解,讓學(xué)生掌握聚合函數(shù)和GROUP BY關(guān)鍵字以及HAVING關(guān)鍵字的應(yīng)用 任務(wù)十五:

      利用class表中的姓名、中文、英文成績創(chuàng)建一個(gè)名為jjnn的新表。

      通過本例講解,讓學(xué)生掌握從源表中篩選一部分?jǐn)?shù)據(jù)產(chǎn)生新表的方法。

      設(shè)計(jì)思路:

      這個(gè)環(huán)節(jié)我拋出了一個(gè)個(gè)任務(wù),促使學(xué)生去自我探索和自主學(xué)習(xí),達(dá)到掌握操作和使用的目的,激發(fā)學(xué)生的學(xué)習(xí)熱情和創(chuàng)造積極性。

      (三)課堂小結(jié),鞏固新知

      這節(jié)課我們學(xué)習(xí)了SQL語言查詢的使用方法,綜合以上任務(wù),不難得出SELECT語句的使用格式和方法(板書SELECT語句的格式):

      ? 〈SELECT語句〉::=

      SELECT [ALL|DISTINCT]〈目標(biāo)列表達(dá)式〉[別名] [ ,〈目標(biāo)列表達(dá)式〉[別

      名]]?

      FROM 〈表名或視圖名〉[別名][ ,〈表名或視圖名〉[別名]]?

      [WHERE〈條件表達(dá)式〉]

      [GROUP BY 〈列名1〉[HAVING〈條件表達(dá)式〉]]

      [ORDER BY 〈列名2〉[ASC|DESC]];

      ? 〈目標(biāo)列表達(dá)式〉::=

      *

      |〈表名〉.*

      |[〈表名〉.]〈列名表達(dá)式〉{,[〈表名〉.]〈列名表達(dá)式〉}

      |〈集函數(shù)名〉([DISTINCT|ALL] *|列名)

      ? 〈集函數(shù)名〉::=

      COUNT

      |SUM

      |AVG

      |MAX

      |MIN

      ? 〈條件表達(dá)式〉::=

      1.? θ ?

      2.? [NOT] BETWEEN ? AND ?

      3.? [NOT] IN(?)

      4.? [NOT] LIKE '?'

      5.? IS [NOT] NULL

      6.[NOT] EXISTS 〈SELECT語句〉

      7.〈條件表達(dá)式〉〈AND|OR〉〈條件表達(dá)式〉

      對學(xué)生在操作中出現(xiàn)的問題再一次強(qiáng)調(diào)書寫命令的注意事項(xiàng)。

      六、教學(xué)反思

      本節(jié)課,我的設(shè)計(jì)任務(wù)與學(xué)生的成績有關(guān),容易激起學(xué)生很大的關(guān)注。隨著任務(wù)的深入,學(xué)習(xí)目標(biāo)得到很好的落實(shí),力爭以學(xué)習(xí)目標(biāo)為起點(diǎn),又以學(xué)習(xí)目標(biāo)為歸宿。學(xué)習(xí)過程中要時(shí)刻關(guān)注學(xué)生的進(jìn)展及出現(xiàn)的問題,對于學(xué)生的點(diǎn)滴進(jìn)步給予及時(shí)的肯定;對于出現(xiàn)的問題,也是一種動(dòng)態(tài)生成的教學(xué)資源,應(yīng)善于捕捉,適時(shí)提出,引導(dǎo)學(xué)生分析并解決,實(shí)現(xiàn)“問題從學(xué)生中來,最終回到學(xué)生中去”,從而完善學(xué)生的意義建構(gòu)。

      第三篇:《數(shù)據(jù)的查詢操作》

      第八次作業(yè)1

      1.檢索年齡大于18歲的女學(xué)生的學(xué)號(hào)和姓名(注意:要給列起別名);use 學(xué)生課程數(shù)據(jù)庫

      select sno ,sname

      from studentwhere sage>18 and ssex='女'

      2.檢索所有男學(xué)生選修的課程號(hào)和課程名稱(僅在結(jié)果中列出10%的數(shù)據(jù)行)。use 學(xué)生課程數(shù)據(jù)庫

      select top(10)percent course.cno,cname

      from student,sc,course

      where student.sno=sc.sno and sc.cno=course.cno and ssex='男'

      3.查詢年齡大于18,并不是信息管理也不是計(jì)算機(jī)科學(xué)的學(xué)生的姓名和性別(復(fù)合查詢);

      select sname,ssex

      from studentwhere sage>18 and sdept not in('信息管理','計(jì)算機(jī)科學(xué)')

      4..查詢以“DB_”開頭,和倒數(shù)第二個(gè)漢字為“導(dǎo)”字的課程信息(模糊查詢);select *

      from course

      where cname like 'DB_%' or cname like '%導(dǎo)_'

      5.查詢student表和sc表的交叉連接;

      select *

      from student cross join sc

      6.檢索王同學(xué)不學(xué)的課程的課程號(hào)和課程名稱;

      select cno,cname

      from course

      where cno not in(select cno from sc where sno in(select snofrom student

      where sname='王%'))

      7.檢索全部學(xué)生都選修的課程號(hào)和課程名稱;

      SELECT cno,cname

      FROM course

      WHERE NOT EXISTS

      (SELECT *FROM student

      WHERE NOT EXISTS

      (SELECT *

      FROM SC

      WHERE SC.Sno= Student.Sno AND SC.Cno= Course.Cno))

      8.檢索所有課程的成績均高于90分的學(xué)生的姓名和年齡;

      select sname, sage

      from student

      where sno in

      (select sno

      from sc

      group by sno

      having MIN(grade)>90)

      go

      9.求劉老師所授的每門課程的平均成績;

      select cno,AVG(grade)

      from sc

      where cno in(select cno from course where cname in(select job from

      teacher

      where ename like '劉%'))

      Group by cno

      10.求年齡大于所有女同學(xué)的男學(xué)生的姓名和年齡

      select sname,sage

      from student

      where sage> all(select sage from student where ssex='女')and ssex='男'

      11.求每個(gè)學(xué)生的總分,要求輸出學(xué)號(hào)和總分?jǐn)?shù)(要求依然保持學(xué)生原有的明細(xì)分?jǐn)?shù),并按學(xué)號(hào)分組匯總)

      select sno,grade

      from sc

      order by sno

      COMPUTE SUM(grade)by sno

      12.查詢各不同平均成績所對應(yīng)的學(xué)生人數(shù)(要求顯示各組的單項(xiàng)人數(shù))

      select avgr,COUNT(*)

      from(select sno,AVG(grade)from sc

      group by sno)as sg(sno,avgr)GROUP BY avgr

      13.查詢年齡小于18歲和大于20歲的學(xué)生的所有信息(要求用并運(yùn)算實(shí)現(xiàn)union);select *

      from student

      where sage<18

      union

      select *

      from student

      where sage>20

      14.查詢即選修了‘1001’號(hào)課程有選修了‘1003’號(hào)課程的學(xué)生的學(xué)號(hào)(要求用用交運(yùn)算實(shí)現(xiàn)intersect);

      select sno

      from sc

      where cno='1001'

      intersect

      select sno

      from scwhere cno='1003'

      15.查詢選修了‘1002’號(hào)課程,但不是工業(yè)工程系的學(xué)生的學(xué)號(hào)(要求用差運(yùn)算實(shí)現(xiàn)except)

      select sno

      from sc

      where cno=1002

      exceptselect sno

      from student

      where sdept!='工業(yè)工程'

      16.創(chuàng)建一個(gè)公用表,該表由課程號(hào)、人數(shù)和最高分組成,用于存放各門課程的課程號(hào)、選修該課的人數(shù)及該門課的最高分?jǐn)?shù),查詢該公用表,并按照課程號(hào)排序。

      WITH gongyongbiao(cno,amount,maxgrade)

      AS(SELECT sc.cno, COUNT(*), MAX(grade)

      FROM course,sc

      WHERE sc.cno IS NOT NULL

      GROUP BY sc.cno)

      SELECT cno,amount,maxgrade

      FROM gongyongbiao

      第八次作業(yè)

      21.在學(xué)生信息表中進(jìn)行自聯(lián)接查詢,并在連接時(shí)使用內(nèi)鏈接,返回籍貫是“河南”或者“北

      京”的學(xué)生學(xué)號(hào)、姓名、班級(jí)編號(hào)及籍貫信息。

      select student.sno,sname,class,jiguan

      from student

      where jiguan=‘河南’or jiguan=‘北京’

      2.查詢?nèi)藬?shù)超過45人所在班級(jí)中的學(xué)生的學(xué)號(hào)、姓名和班級(jí)名稱。

      Select 學(xué)號(hào),姓名,班級(jí)名稱

      From 學(xué)生信息a,班級(jí)信息b

      Where a.班級(jí)編號(hào)=b.班級(jí)編號(hào) and a.班級(jí)編號(hào) in(select 班級(jí)編號(hào) from 班級(jí)信息 where 人數(shù)>45)

      3.對于成績大于等于90的數(shù)據(jù)進(jìn)行查詢,并返回考試成績的學(xué)生的學(xué)號(hào)、姓名、性別、籍

      貫和所在班級(jí)名稱及年級(jí)信息。(用EXISTS編寫語句)

      Select a.sno,a.sname,a.ssex,a.jiguan,b.class,b.grade

      From 學(xué)生信息a inner join 班級(jí)信息b

      On a.班級(jí)編號(hào)=b.班級(jí)編號(hào)

      Where exists(select* from 成績表 where 學(xué)號(hào)=a.學(xué)號(hào) and grade>=90)

      4.查詢出任意一個(gè)大于平均成績的學(xué)生的學(xué)號(hào)、姓名、班級(jí)編號(hào)、課程編號(hào)和成績信息。

      Select a.sno,a.sname,a.class,b.cno,b.grade

      From 學(xué)生信息a inner join 成績表b

      On a.學(xué)號(hào)=b.學(xué)號(hào)

      Where grade>any(select avg(grade)from 成績表)

      5.查詢學(xué)生姓名為“李文東”所在班級(jí)的學(xué)生信息,要求返回學(xué)生的學(xué)號(hào)、姓名、性別、班級(jí)編號(hào)、班級(jí)名稱和年級(jí)信息

      Select a.sno,a.sname,a.ssex,b.banjibianhao,b.banjimingcheng,b.nianjixinxi From 學(xué)生信息a inner join 班級(jí)信息b on a.班級(jí)編號(hào)=b.班級(jí)編號(hào)

      Where a.班級(jí)編號(hào)=(select 班級(jí)編號(hào) from 學(xué)生信息 where sname=‘李文東’)

      6.查詢出所有非計(jì)算機(jī)系的學(xué)生信息,并顯示出這些學(xué)生的考試成績,成績按降序排列顯示,要求返回學(xué)生的學(xué)號(hào)、姓名、班級(jí)編號(hào)、課程編號(hào)和成績信息。

      Select a.學(xué)號(hào),a.姓名,a.班級(jí)編號(hào),b.課程編號(hào),b.成績

      From 學(xué)生信息a inner join 成績表b

      On a.學(xué)號(hào)=b.學(xué)號(hào)

      Where a.學(xué)號(hào) not in(select 學(xué)號(hào) from 學(xué)生信息 where 班級(jí)編號(hào) in

      (select 班級(jí)編號(hào) from 課程信息 where 開課系別=‘計(jì)算機(jī)系’))

      Order by 成績 desc

      Select a.學(xué)號(hào),a.姓名,a.班級(jí)編號(hào),b.課程編號(hào),b.成績

      From 學(xué)生信息a inner join 成績表b

      On a.學(xué)號(hào)=b.學(xué)號(hào)

      Where a.班級(jí)編號(hào) not in((select 班級(jí)編號(hào) from 課程信息 where 開課系別=‘計(jì)算機(jī)系’))Order by 成績 desc

      第四篇:SQL-數(shù)據(jù)查詢語言

      寧波工程學(xué)院

      數(shù)據(jù)庫理論與技術(shù)課程實(shí)驗(yàn)報(bào)告

      學(xué)院: 電子與信息工程學(xué)院 專業(yè):計(jì)算機(jī)科學(xué)與技術(shù) 年級(jí): 計(jì)科10-2 實(shí)驗(yàn)時(shí)間: 2012年4月15日

      組長: 何亞玲 學(xué)號(hào): 10401010201 指導(dǎo)教師簽字: 成績:

      實(shí)驗(yàn)

      三、SQL-數(shù)據(jù)查詢語言

      一、實(shí)驗(yàn)?zāi)康暮鸵?/p>

      1、實(shí)驗(yàn)?zāi)康模荷钊肜斫膺B接查詢和嵌套查詢的語句格式、執(zhí)行過程,掌握它們的使用方法;理解數(shù)據(jù)更新語言INSERT、UPDATE、DELETE語句的格式和作用,掌握它們的使用方法和應(yīng)用范圍;理解視圖的概念,掌握其定義方法和應(yīng)用方法。

      2、實(shí)驗(yàn)要求:在每次實(shí)驗(yàn)前,學(xué)生必須根據(jù)實(shí)驗(yàn)指導(dǎo)書設(shè)計(jì)出實(shí)驗(yàn)方案(程序和實(shí)驗(yàn)步驟);在實(shí)驗(yàn)過程中要求獨(dú)立進(jìn)行程序調(diào)試和排錯(cuò),學(xué)會(huì)使用在線幫助來解決實(shí)驗(yàn)中遇到的問題,同時(shí)運(yùn)用理論的知識(shí)來分析問題和解決問題,記錄下實(shí)驗(yàn)過程和結(jié)果。上機(jī)結(jié)束后寫出實(shí)驗(yàn)報(bào)告,并對實(shí)驗(yàn)過程進(jìn)行分析和總結(jié)。

      二、實(shí)驗(yàn)內(nèi)容與步驟

      1、在SQL SERVER 2005上附加數(shù)據(jù)庫jxgl和ReadBook。

      2、在jxgl中完成下列查詢

      (1)查詢選修課程學(xué)生的學(xué)號(hào)、姓名、所選課程號(hào)、課程名稱以及所取得的成績(2)查詢每一門課程及其先修課程,查詢結(jié)果中顯示課程號(hào)、課程名和先修課程名(3)查詢和“劉濤”在一個(gè)班級(jí)的學(xué)生的信息 思考:該查詢可用幾種方法實(shí)現(xiàn)?

      (4)查詢選修了‘計(jì)算機(jī)基礎(chǔ)’課的學(xué)生的學(xué)號(hào)、姓名(分別用連接查詢和嵌套查詢的方法實(shí)現(xiàn))

      (5)查詢沒有選修課程的學(xué)生的信息

      (6)查詢其他班中比“03計(jì)算應(yīng)用1”所有學(xué)生入學(xué)成績高的學(xué)生的姓名和入學(xué)成績(用兩種方法實(shí)現(xiàn))

      (7)查詢每個(gè)學(xué)生超過該門課程平均成績的課程號(hào)

      1(8)查詢至少選修了“0311102”學(xué)生所選全部課程的學(xué)生的學(xué)號(hào)(9)查詢既選修了“計(jì)算機(jī)基礎(chǔ)”又選修了“C語言基礎(chǔ)”的學(xué)生的學(xué)號(hào)(10)同時(shí)顯示students中學(xué)生以及teachers中教師的姓名、性別

      3、在jxgl中完成下列數(shù)據(jù)更新

      (1)向course表添加一個(gè)新的元組。

      (2)將“0301102”學(xué)生所選的“0000002”課程的成績改為100分,績點(diǎn)改為2(3)刪除(1)中在course表中添加的記錄

      (4)統(tǒng)計(jì)每門課程的平均成績并將統(tǒng)計(jì)結(jié)果存入到j(luò)xgl數(shù)據(jù)庫中

      思考:如何將students表中班級(jí)名 “03計(jì)算應(yīng)用1”改為“03計(jì)算機(jī)應(yīng)用1”(可調(diào)用函數(shù)完成)

      4、查詢教師的編號(hào)、姓名、上課的課程號(hào)、課程名稱及班級(jí)。將該查詢定義為一個(gè)視圖。

      5、在第4題定義的視圖中完成下列查詢

      (1)查詢“姚明”所上課程和班級(jí)。(2)統(tǒng)計(jì)每一位教師上課的數(shù)量

      6、利用數(shù)據(jù)庫ReadBook完成下列查詢及視圖設(shè)計(jì)。(在SQL SERVER2005上附加數(shù)據(jù)庫ReadBook)

      (1)設(shè)計(jì)一個(gè)查詢,要求用連接和嵌套兩種方式完成。(2)設(shè)計(jì)一個(gè)查詢,要求用外連接的方式完成。

      (3)設(shè)計(jì)一個(gè)查詢,要求用帶exists或not exists相關(guān)子查詢完成(4)設(shè)計(jì)一個(gè)集合查詢

      (5)設(shè)計(jì)一個(gè)帶復(fù)合條件連接的查詢

      (6)設(shè)計(jì)一個(gè)視圖,并在該視圖中完成添加、修改、刪除數(shù)據(jù)的操作。

      (7)設(shè)計(jì)一個(gè)視圖,并在該視圖完成兩個(gè)統(tǒng)計(jì):a.每位讀者以及他的借書數(shù)量,按借書數(shù)量作降序排列 b.每本書以及被借出的次數(shù),按借出次數(shù)作降序排列。

      注意在實(shí)驗(yàn)報(bào)告中說明查詢的目的和對應(yīng)的語句。

      三、實(shí)驗(yàn)過程及數(shù)據(jù)記錄

      1、在SQL SERVER 2005上附加數(shù)據(jù)庫jxgl和ReadBook。

      2、在jxgl中完成下列查詢

      (1)查詢選修課程學(xué)生的學(xué)號(hào)、姓名、所選課程號(hào)、課程名稱以及所取得的成績

      select Students.sno,sname,SC.cno,cname,grade from Students,SC,Course where Students.sno=SC.sno and SC.cno=Course.cno

      (2)查詢每一門課程及其先修課程,查詢結(jié)果中顯示課程號(hào)、課程名和先修課程名 select cno,cname from

      Course

      (3)查詢和“劉濤”在一個(gè)班級(jí)的學(xué)生的信息 select * from

      students where class=(select class from

      students where sname='劉濤')

      思考:該查詢可用幾種方法實(shí)現(xiàn)?

      (4)查詢選修了‘計(jì)算機(jī)基礎(chǔ)’課的學(xué)生的學(xué)號(hào)、姓名(分別用連接查詢和嵌套查詢的方法實(shí)現(xiàn))連接查詢:

      select Students.sno,sname from students,SC,Course where cname='計(jì)算機(jī)基礎(chǔ)'and Students.sno=SC.sno and SC.cno=Course.cno 嵌套查詢:

      select s1.sno,sname from

      students s1,SC s2,Course s3 where cname='計(jì)算機(jī)基礎(chǔ)'and s1.sno=s2.sno and s2.cno=s3.cno 執(zhí)行結(jié)果同上

      (5)查詢沒有選修課程的學(xué)生的信息

      select * from

      Students where sno not in(select sno from sc)

      (5)查詢其他班中比“03計(jì)算應(yīng)用1”所有學(xué)生入學(xué)成績高的學(xué)生的姓名和入學(xué)成績(用兩種方法實(shí)現(xiàn))

      1:select sname,mgrade from students where

      mgrade>(select max(mgrade)

      from students where class='03計(jì)算應(yīng)用')

      2:select sname,mgrade from students where

      mgrade>all(select mgrade from students where class='03計(jì)算應(yīng)用1')

      (6)查詢每個(gè)學(xué)生超過該門課程平均成績的課程號(hào)

      select

      cno from sc sc1 ,students where

      grade>(select avg(grade)from sc sc2

      where sc2.cno=sc1.cno)

      (9)查詢既選修了“計(jì)算機(jī)基礎(chǔ)”又選修了“C語言基礎(chǔ)”的學(xué)生的學(xué)號(hào) where sc2.cno=sc1.cno)

      select

      s1.sno from

      course c1,course c2,sc sc1,sc sc2,students s1,students s2 where

      c1.cname='計(jì)算機(jī)基礎(chǔ)'

      and

      c2.cname='C語言基礎(chǔ)' and c1.cno=sc1.cno

      and

      sc1.sno=s1.sno and c2.cno=sc2.cno and

      sc2.sno=s2.sno and

      s1.sno=s2.sno(10)同時(shí)顯示students中學(xué)生以及teachers中教師的姓名、性別 因?yàn)榻處煵]有標(biāo)明性別,所以不顯示

      select sname,ssex from students select tname from teachers

      3、在jxgl中完成下列數(shù)據(jù)更新

      (1)向course表添加一個(gè)新的元組。增加的元組為學(xué)習(xí)的學(xué)期cterm: use jxgl_1 alter table course add cterm char(1)

      (2)將“0301102”學(xué)生所選的“0000002”課程的成績改為100分,績點(diǎn)改為2 update sc set grade='100',point='2' where sno='0301102'

      and cno='0000002'(3)刪除(1)中在course表中添加的記錄 use jxgl_1 alter table course drop column

      cterm(4)統(tǒng)計(jì)每門課程的平均成績并將統(tǒng)計(jì)結(jié)果存入到j(luò)xgl數(shù)據(jù)庫中

      select cno,avg(grade)as avg_grade from SC group by cno

      思考:如何將students表中班級(jí)名 “03計(jì)算應(yīng)用1”改為“03計(jì)算機(jī)應(yīng)用1”(可調(diào)用函數(shù)完成)update

      students set class='03計(jì)算機(jī)應(yīng)用' where class='03計(jì)算應(yīng)用'

      4、查詢教師的編號(hào)、姓名、上課的課程號(hào)、課程名稱及班級(jí)。將該查詢定義為一個(gè)視圖。

      create

      view teacher_information(tno,tname,cno,cname,class)as select teachers.tno,tname,TC.cno,cname,class from Course,TC,Teachers where Course.cno=TC.cno and TC.tno=Teachers.tno

      5、在第4題定義的視圖中完成下列查詢

      (1)查詢“姚明”所上課程和班級(jí)。select cname,class from teacher_information where

      tname='姚明'

      (2)統(tǒng)計(jì)每一位教師上課的數(shù)量 select tname,count(cno)the_all from teachers_view group by tno,tname

      6、利用數(shù)據(jù)庫ReadBook完成下列查詢及視圖設(shè)計(jì)。(在SQL SERVER2005上附加數(shù)據(jù)庫ReadBook)

      (1)設(shè)計(jì)一個(gè)查詢,要求用連接和嵌套兩種方式完成。

      連接:

      select

      rname,bookname from

      books,L_R,readers where books.bookid=L_R.bookid and

      L_R.rno=readers.rno 嵌套:

      select rname,bookname from books b1,L_R lr1 ,readers r1 where b1.bookid=lr1.bookid and

      lr1.rno=r1.rno(2)設(shè)計(jì)一個(gè)查詢,要求用外連接的方式完成。select classid,rno from books right outer join L_R on

      books.bookid=L_R.bookid

      (3)設(shè)計(jì)一個(gè)查詢,要求用帶exists或not exists相關(guān)子查詢完成 select distinct bookname from books where exists(select bookid from

      L_R where

      books.bookid=L_R.bookid and rno='04201')(4)設(shè)計(jì)一個(gè)集合查詢

      select * from readers where rsex='男' union

      select * from readers where spet='網(wǎng)絡(luò)'(5)設(shè)計(jì)一個(gè)帶復(fù)合條件連接的查詢

      select rname,bookname from books,L_R,readers where books.bookid=L_R.bookid and L_R.rno=readers.rno(6)設(shè)計(jì)一個(gè)視圖,并在該視圖中完成添加、修改、刪除數(shù)據(jù)的操作。create

      view books_information(bookid,classid,bookname)as select bookid,classid,bookname from books

      select * from books_information

      insert into books_information(bookid,classid,bookname)values('sn911','yy','計(jì)算機(jī)維修')

      update books_information set classid='yy' where bookid='sn9001'

      delete from

      books_information where classid='sn9007'

      (7)設(shè)計(jì)一個(gè)視圖,并在該視圖完成兩個(gè)統(tǒng)計(jì):a.每位讀者以及他的借書數(shù)量,按借書數(shù)量作降序排列 b.每本書以及被借出的次數(shù),按借出次數(shù)作降序排列。create view lr(rno,rname,bookid)6 as select readers.rno,rname,bookid from readers,L_R where readers.rno=L_R.rno

      select rno,rname,count(bookid)as 借書數(shù)量 from lr group by rno,rname order by 借書數(shù)量desc

      select bookid,count(bookid)as 借書次數(shù) from lr group by bookid order by 借書次數(shù)desc drop view lr

      注:圖很多,不一一附上

      四、實(shí)驗(yàn)結(jié)果分析

      這次實(shí)驗(yàn)的內(nèi)容是熟悉連接查詢和嵌套查詢的語句格式、執(zhí)行過程,并掌握它們的使用方法;理解數(shù)據(jù)更新語言INSERT、UPDATE、DELETE語句的格式和作用,掌握它們的使用方法和應(yīng)用范圍;理解視圖的概念,掌握其定義方法和應(yīng)用方法。

      按照課本的指導(dǎo),導(dǎo)入數(shù)據(jù)庫,才可以進(jìn)行相關(guān)查詢。編寫程序時(shí)會(huì)出現(xiàn)很多錯(cuò)誤,很多分析時(shí)還正確,卻不能執(zhí)行,自己不斷獨(dú)立糾錯(cuò)改正,才可以實(shí)現(xiàn)查詢結(jié)果。

      第五篇:SQL 結(jié)構(gòu)化查詢語言速學(xué)寶典

      第二章

      create database db_sqlserver2--創(chuàng)建db_sqlserver2數(shù)據(jù)庫on

      (name= db_sqlserver2_data,--文件的邏輯名稱

      filename='e:mydatadb_sqlserver2_data.mdf',--數(shù)據(jù)庫文件要保存路徑及文件名

      size=4,--文件的大小

      maxsize=10,--文件可增大到的最大大小filegrowth=10%--文件的自動(dòng)增量)

      log on

      (name= db_sqlserver2_log,filename='e:mydatadb_sqlserver12_log.ldf',size=1,maxsize=6,filegrowth=1)

      create database db_sqlserver3

      on

      (name=db_sqlserver3_data,--第一個(gè)數(shù)據(jù)文件的邏輯名稱filename='e:mydatadb_sqlserver31_data.mdf',size=4,maxsize=10,filegrowth=10%),(name=Mydatabase22_data,--第二個(gè)數(shù)據(jù)文件的邏輯名稱filename='e:mydatadb_sqlserver32_data.mdf',size=3,maxsize=10,filegrowth=1)

      log on

      (name=Mydatabase21_log,--第一個(gè)日志文件的邏輯名稱filename='e:mydatadb_sqlserver31_log.ldf',size=1,maxsize=6,filegrowth=1),(name=Mydatabase22_log,--第二個(gè)日志文件的邏輯名稱filename='e:mydatadb_sqlserver32_log.ldf',size=1,maxsize=6,filegrowth=10%)

      下載SQL語言數(shù)據(jù)查詢操作word格式文檔
      下載SQL語言數(shù)據(jù)查詢操作.doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        數(shù)據(jù)庫--數(shù)據(jù)查詢和操作[5篇材料]

        《數(shù)據(jù)查詢與操作》實(shí)驗(yàn) 一、實(shí)驗(yàn)?zāi)康呐c要求 1、理解簡單查詢和復(fù)合查詢的意義。 2、掌握SELECT語句和各子句的使用。 3、掌握多表查詢和子查詢的使用。 4、掌握INSERT、UPD......

        SQL查詢語句

        SQL查詢語句 第一次:查詢(顯示)、條件、排序、空記錄 第二次:通配符、生成表、文件(記事本)、數(shù)組、臨時(shí)表,數(shù)學(xué)函數(shù)、分組、嵌套查詢 第三次:插入記錄、刪除記錄、更新記錄 第四次:......

        Sql語句查詢

        sql語句多表連接查詢 在程序開發(fā)過程中,不僅可以對單一數(shù)據(jù)表進(jìn)行查詢,還可以進(jìn)行多表查詢,用戶通過多表查詢從多個(gè)表中提取出需要的數(shù)據(jù)。 多表查詢可以分為內(nèi)連接查詢、外連......

        SQL常用查詢總結(jié)

        1) 查詢?nèi)w學(xué)生的學(xué)號(hào)、姓名、所在系 select Sno,Sname,Sdept from Student 2) 查詢?nèi)w學(xué)生的詳細(xì)信息 select * from Student 3) 查詢?nèi)w學(xué)生的姓名及其出生日期 select Sn......

        SQL語言匯總

        1. UPDATE MARK SET 總分=語文+數(shù)學(xué)+英語SELECT 準(zhǔn)考證號(hào),姓名,總分 FROM MARK WHERE 語文>=75 AND數(shù)學(xué)>=75 AND 英語>=75 AND 語文+數(shù)學(xué)+英語>=240 ORDER BY 總分 DESC2 UP......

        SQL語言

        1.輸出任意兩個(gè)字符串變量的值(參考代碼) declare @v1 varchar(12),@V2 varchar(12) set @v1='中國' set @v2='你好!' select @v1+@v2 2.為以下程序糾錯(cuò) declare @v1 varchar(12)......

        SQL語言以及SQL

        SQL語言以及SQL*PLUS工具 1. SQL語言組成: ? 數(shù)據(jù)查詢語言(DQL):SELECT; ? 數(shù)據(jù)操縱語言(DML):INSERT、UPDATE、DELETE; ? 事務(wù)控制語言(TCS):COMMIT、ROLLBACK; ? 數(shù)據(jù)定義語言(DDL):CREATE、DR......

        SQL 語言

        SQL語言 create database student on primary (name=student_data1,filename='c:student_data1.mdf',size=10M,maxsize=100M,filegrowth=10%) filegroupstudent_group分組......