亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        SQL Server數(shù)據(jù)庫查詢的統(tǒng)一語句框架

        2018-05-14 13:52:18包希日莫
        關(guān)鍵詞:關(guān)鍵字數(shù)據(jù)表語句

        包希日莫

        [摘 要] 查詢語句的教學(xué)在高校計算機專業(yè)的數(shù)據(jù)庫教學(xué)中占有重要地位。在數(shù)據(jù)庫的查詢語句教學(xué)中引入了查詢語句統(tǒng)一語句框架以及相應(yīng)的問答填空式語句構(gòu)建方法和形式化教學(xué)方案,從而克服了傳統(tǒng)教學(xué)的諸多弊端,在教學(xué)實踐中收到了較好的效果。

        [關(guān) 鍵 詞] 數(shù)據(jù)庫;SQL Server;查詢語句;統(tǒng)一語句框架

        [中圖分類號] G623.58 [文獻標(biāo)志碼] A [文章編號] 2096-0603(2018)17-0036-02

        一、傳統(tǒng)的數(shù)據(jù)庫查詢教學(xué)

        數(shù)據(jù)庫查詢是計算機專業(yè)數(shù)據(jù)庫教學(xué)的重點和難點。目前,即使在主流的項目式或任務(wù)驅(qū)動的教學(xué)模式下,仍在沿用通過具體實例逐一介紹查詢技巧的傳統(tǒng)教學(xué)方法[1][2][3]。例如,介紹如何獲取某數(shù)據(jù)表的前若干條記錄時,通常使用實例

        SELECT Top n *

        FROM Table1

        其含義為返回數(shù)據(jù)表Table1的前n條記錄;介紹左外連接查詢時,使用類似于

        SELECT Table1.Column1,Table2.Column2

        FROM Table1

        LEFT JOIN Table2

        ON Table1.Column1=Table2.Column1

        的實例,其含義是返回數(shù)據(jù)表Table1和Table2的笛卡爾積中的滿足指定匹配條件的記錄的指定列和Table1中的失配記錄的指定列。

        雖然遵循由簡單到復(fù)雜的教學(xué)規(guī)律,但是上述教學(xué)方法缺乏系統(tǒng)性和關(guān)聯(lián)性,知識傳授過于零散,不利于學(xué)生整體知識結(jié)構(gòu)的形成和解決問題能力的培養(yǎng)。此外,由于過于強調(diào)知識傳授的完整性,較難做到主次分明、重點突出,違背教學(xué)規(guī)律和認知規(guī)律[4][5]。

        二、數(shù)據(jù)庫查詢統(tǒng)一語句框架

        筆者在數(shù)據(jù)庫查詢教學(xué)中設(shè)計和運用了如下圖所示的SQL Server數(shù)據(jù)庫查詢統(tǒng)一語句框架,并輔以問答填空式語句構(gòu)建方法和形式化教學(xué)方案,克服了傳統(tǒng)教學(xué)的上述諸多不足,在實踐中收到了較好的效果。

        數(shù)據(jù)庫查詢統(tǒng)一語句框架將查詢語句的諸多方面有機地關(guān)聯(lián)和整合在一起,有助于學(xué)生認清查詢語句各要素之間的關(guān)系并從整體上學(xué)習(xí)、理解和運用查詢語句。

        下面詳細闡述和說明該統(tǒng)一語句框架。

        (一)路徑①

        SELECT語句不以任何數(shù)據(jù)表為查詢對象(如查詢當(dāng)前數(shù)據(jù)庫的相關(guān)信息)時,只包含SELECT關(guān)鍵字以及根據(jù)需要給出的函數(shù)或系統(tǒng)變量列表。例如

        SELECT HOST_NAME( ),@@SERVERNAME,DB_NAME( ),@@VERSION

        該語句查詢當(dāng)前的主機名稱、服務(wù)器名稱、數(shù)據(jù)庫名稱以及SQL Server版本。

        (二)路徑②、③

        SELECT語句以數(shù)據(jù)表為查詢對象時,SELECT關(guān)鍵字后可以跟隨篩選記錄條件,如TOP n、TOP n PERCENT等,之后應(yīng)為由要求返回其值的列、常量、變量或函數(shù)構(gòu)成的列表。

        對數(shù)據(jù)表進行非外連接查詢時,SELECT語句中應(yīng)包含F(xiàn)ROM關(guān)鍵字和被查詢數(shù)據(jù)表的名稱列表,當(dāng)這種查詢?yōu)闂l件查詢時,還應(yīng)包含WHERE關(guān)鍵字和查詢條件。例如

        SELECT TOP n Table1.Column1,Table2.Column1

        FROM Table1,Table2

        WHERE Table1.Column1>=Table2.Column1

        該語句返回數(shù)據(jù)表Table1和Table2的迪卡爾積的滿足條件Table1.Column1>= Table2.Column1的前n條記錄的指定列。

        對數(shù)據(jù)表進行返回未匹配記錄的外連接查詢時,SELECT語句應(yīng)包含

        FROM ( )

        RIGHT|LEFT|FULL JOIN ( )

        ON ( )

        FROM、JOIN和ON關(guān)鍵字后依次為左數(shù)據(jù)表名稱、右數(shù)據(jù)表名稱和匹配條件。外連接查詢的實例請參見本文的第二個例子。

        (三)路徑④

        對數(shù)據(jù)表的查詢結(jié)果進行分組時,SELECT語句應(yīng)包含GROUP BY和作為分組依據(jù)的列的名稱,需要對分組結(jié)果進行進一步篩選時,應(yīng)包含HAVING關(guān)鍵字和篩選條件。例如

        SELECT Column1,F(xiàn)unction1(*),F(xiàn)unction2(Column2)

        FROM Table1

        GROUP BY Column1

        HAVING Column1> n

        該語句將Column1的值相同的記錄劃為一組,返回滿足條件Column1> n的各組的Column1列、Funtion1(*)函數(shù)和Function2(Column2)函數(shù)的值。

        (四)路徑⑤

        需要對查詢結(jié)果進行排序時,SELECT語句中應(yīng)當(dāng)引入ORDER BY、排序依據(jù)以及升序、降序選擇。例如

        SELECT Column1,Column2

        FROM Table1

        ORDER BY Column2 DESC

        該語句對查詢結(jié)果以Column2的降序進行排序。需要指出的是,如果GROUP BY后使用ORDER BY,則對分組結(jié)果進行排序。例如

        SELECT Column1, Function1(Column2)

        FROM Table1

        GROUP BY Column1

        ORDER BY Function1(Column2) DESC

        該語句對數(shù)據(jù)表Table1的內(nèi)容以Column1為依據(jù)進行分組,計算每組記錄的Function1(Column2)值,最后對分組結(jié)果按Function1(Column2)的降序進行排序。

        三、數(shù)據(jù)庫查詢的問答填空式語句構(gòu)建

        面對實際查詢需求,可以基于上述統(tǒng)一語句框架,采用問答填空式方法構(gòu)建需要的查詢語句。

        首先,通過回答下列問題,選擇查詢語句的主要關(guān)鍵字從而確定其主體結(jié)構(gòu):

        1.是否為數(shù)據(jù)表查詢?該問題用于取舍上圖框架中的路徑①;

        2.數(shù)據(jù)表查詢時,是否要求返回不匹配的記錄?該問題用于在上圖框架的路徑②和路徑③之間進行選擇;

        3.數(shù)據(jù)表非外連接查詢時,是否有查詢條件?該問題用于決定是否包含WHERE關(guān)鍵字;

        4.數(shù)據(jù)表查詢時是否需要分組,分組后是否需要篩選?這些問題分別用于取舍上圖框架中的路徑④以及關(guān)鍵字HAVING;

        5.數(shù)據(jù)表查詢時是否需要排序?該問題用于取舍上圖框架中的路徑⑤。

        之后,分析確定統(tǒng)一語句框架中被選定關(guān)鍵字后的各括號位置上應(yīng)填的內(nèi)容,從而構(gòu)建起完整的查詢語句。

        例如,如果查詢需求為“統(tǒng)計圖書信息表中清華大學(xué)出版社、電子工業(yè)出版社以及機械工業(yè)出版社出版的書籍的數(shù)量,計算各出版社出版的書籍的平均價格并按平均價格由高到低的順序進行排序”,通過回答上述問題,可以依次做到:舍棄路徑①;在路徑②和③之間選擇路徑②;不包含關(guān)鍵字WHERE;選擇路徑④及關(guān)鍵字HAVING;選擇路徑⑤。之后在每個關(guān)鍵字后填寫查詢需求中提到的條件,即可得到滿足要求的查詢語句:

        SELECT 出版社,COUNT(*),AVG(價格)

        FROM 圖書信息表

        GROUP BY 出版社

        HAVING 出版社=′清華大學(xué)出版社′OR 出版社=′電子工業(yè)出版社′OR出版社=′機械工業(yè)出版社′

        ORDER BY AVG(價格) DESC。

        四、數(shù)據(jù)庫查詢的教學(xué)方案設(shè)計

        圍繞統(tǒng)一語句框架和配套的語句構(gòu)建方法展開的數(shù)據(jù)庫查詢教學(xué),其總體教學(xué)方案可設(shè)計如下:

        (一)實例導(dǎo)入

        在介紹數(shù)據(jù)庫查詢的概念、重要性和應(yīng)用場景的前提下,讓學(xué)生直接感受若干個簡單的查詢語句,從而使他們對數(shù)據(jù)庫查詢形成初步的感性認識。

        (二)統(tǒng)一語句框架與問答填空式語句構(gòu)建

        在闡述查詢語句關(guān)鍵字集合的基礎(chǔ)上,重點引入和講授本文的數(shù)據(jù)庫查詢統(tǒng)一語句框架以及基于該框架的問答填空式查詢語句構(gòu)造方法。與查詢語句相關(guān)的零散內(nèi)容,如函數(shù)的使用、條件表達式的書寫等,可以在介紹問答填空式語句構(gòu)建方法時附帶講授。

        (三)鞏固練習(xí)

        針對各種查詢需求進行查詢語句構(gòu)造練習(xí)。此期間的練習(xí)題覆蓋面要廣,諸多練習(xí)題應(yīng)當(dāng)涵蓋上圖所示統(tǒng)一語句框架的主要路徑,即練習(xí)題中應(yīng)當(dāng)包括非外連接(單表查詢、多表查詢)查詢、外連接(左外連接、右外連接、全外連接)查詢以及查詢結(jié)果分組與排序的各類題目。

        五、總結(jié)

        以數(shù)據(jù)庫查詢統(tǒng)一語句框架為核心、輔以問答填空式語句構(gòu)建方法和形式化教學(xué)方案的數(shù)據(jù)庫查詢教學(xué)為傳統(tǒng)教學(xué)帶來了諸多變化,如教學(xué)內(nèi)容相互關(guān)聯(lián)并構(gòu)成了有機整體;教學(xué)過程更加主次分明、重點突出;教學(xué)目標(biāo)更加具體和明確;學(xué)生成就感增強,學(xué)習(xí)積極性得到提高;近乎形式化的過程使學(xué)習(xí)難度降低,學(xué)生負擔(dān)減輕。

        如何設(shè)計形式化教學(xué)方案是需要進一步深入探討的課題。

        參考文獻:

        [1]孫繼紅,黃龍泉.SQL Server 2005數(shù)據(jù)庫原理及應(yīng)用[M].北京:國防工業(yè)出版社,2012.

        [2]魏善沛,何海江.數(shù)據(jù)庫基礎(chǔ)及應(yīng)用(SQL Server 2012)[M].北京:機械工業(yè)出版社,2017.

        [3]張立新,徐劍波.數(shù)據(jù)庫原理與SQL Server應(yīng)用教程[M].北京:電子工業(yè)出版社,2017.

        [4]李丹,趙占坤,丁宏偉,等.SQL Server數(shù)據(jù)庫管理與開發(fā)實用教程[M].2版.北京:機械工業(yè)出版社,2015.

        [5]陳承歡,趙志茹,肖素華.SQL Server 2014數(shù)據(jù)庫應(yīng)用、管理與設(shè)計[M].北京:電子工業(yè)出版社,2016.

        猜你喜歡
        關(guān)鍵字數(shù)據(jù)表語句
        履職盡責(zé)求實效 真抓實干勇作為——十個關(guān)鍵字,盤點江蘇統(tǒng)戰(zhàn)的2021
        華人時刊(2022年1期)2022-04-26 13:39:28
        重點:語句銜接
        湖北省新冠肺炎疫情數(shù)據(jù)表
        黨員生活(2020年2期)2020-04-17 09:56:30
        成功避開“關(guān)鍵字”
        基于列控工程數(shù)據(jù)表建立線路拓撲關(guān)系的研究
        精彩語句
        圖表
        如何搞定語句銜接題
        語文知識(2014年4期)2014-02-28 21:59:52
        基于VSL的動態(tài)數(shù)據(jù)表應(yīng)用研究
        河南科技(2014年24期)2014-02-27 14:19:25
        基于用戶反饋的關(guān)系數(shù)據(jù)庫關(guān)鍵字查詢系統(tǒng)
        蜜桃视频在线在线观看| 午夜性刺激免费视频| 特级av毛片免费观看| 国产一区二区三区影院| 成黄色片视频日本秘书丝袜| 久久婷婷夜色精品国产| 国产日本精品视频一区二区| 99精品国产成人一区二区 | 亚洲春色视频在线观看| av在线免费高清观看| 粗大猛烈进出高潮视频| 久久国产偷| 国产三级在线观看高清| 我和隔壁的少妇人妻hd| 欧美不卡一区二区三区| 丰满少妇愉情中文字幕18禁片| 国产女精品| 色窝综合网| 日韩美女av一区二区| 亚洲婷婷五月综合狠狠爱 | 亚洲人成无码网站久久99热国产| 中文字幕亚洲乱亚洲乱妇| 97超碰国产成人在线| 国产人妻久久精品二区三区老狼| 成人激情四射网| 91久久国产露脸国语对白| 欲求不満の人妻松下纱荣子| 成人免费毛片内射美女-百度 | 青青视频一区| 国产精品一区二区三区黄片视频| 亚洲乱码中文字幕在线播放| 国产成人无码a区在线观看视频 | 亚洲国产精品嫩草影院久久| 久久精品国产亚洲AV成人公司| 日本在线免费一区二区三区| 精品国产粉嫩内射白浆内射双马尾 | 少妇性荡欲视频| 国产精品中文第一字幕| 亚洲一区二区自偷自拍另类| 国产精品国三级国产av| 好吊妞人成免费视频观看|