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

        ?

        “EXISTS”在SQL中的應(yīng)用研究

        2010-04-16 09:15:38肖海蓉
        電腦與電信 2010年9期
        關(guān)鍵詞:謂詞量詞等價

        肖海蓉

        (陜西理工學(xué)院,陜西漢中723000)

        1.引言

        EXISTS的使用在實際的數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)中有著較為廣泛的應(yīng)用,其在SQL的教學(xué)、實踐環(huán)節(jié)中也是學(xué)生比較難于理解和掌握的內(nèi)容。但是,目前在大多數(shù)的教材和參考書上只是簡單地通過一兩個例子介紹了帶有存在量詞EXISTS的書寫語句,并沒有給出實質(zhì)性的說明。本文根據(jù)作者多年的教學(xué)經(jīng)驗,總結(jié)出EXISTS在不同的場合下的使用情況,并以學(xué)生接觸較多的實際案例為依托,在SQL Server環(huán)境下得到了驗證。

        2.案例導(dǎo)入

        以網(wǎng)上商品銷售系統(tǒng)的數(shù)據(jù)庫為例,對EXISTS在不同場合的使用進行探討,下面給出了數(shù)據(jù)庫中的客戶表、商品表、商品銷售表。

        表1 商品表

        表2 客戶表

        3.帶有EXISTS的SQL語句的實例設(shè)計

        我們知道,SQL語句并不提供語義中含有全稱量詞(For All)的實現(xiàn)方法,具體實現(xiàn)時,可以把帶有全稱量詞的謂詞轉(zhuǎn)換為等價的帶有存在量詞(EXISTS)的謂詞形式。

        表3 產(chǎn)品銷售表

        3.1 語義中有“全是”的情況

        例:為了統(tǒng)計商品銷售的情況,查詢?nèi)恰芭笨蛻糍徺I的商品編號。

        問題分析:即在查找結(jié)果中的商品編號沒有“男”客戶購買過此商品??梢允褂瞄g接的方法,先求客戶購買過的所有商品編號以及男客戶購買的商品編號,兩者再做差運算就可得到所求結(jié)果,這時使用SQL語句提供的組合查詢minus,則設(shè)計查詢語句如下:

        但在SQL Server2005的環(huán)境下,分析語句后結(jié)果如圖1所示。這是因為在SQLServer、MySQL在內(nèi)的幾種SQL產(chǎn)品的不同版本并不完全支持標(biāo)準(zhǔn)SQL提供的INTERSECT和MINUS兩種操作。因此,我們必須尋求另外一種解決此問題的方法。可以把“全是”轉(zhuǎn)換為等價的帶有存在量詞(EXISTS)的形式語義,其等價的語義為:查找這樣的商品編號,不存在男客戶也購買了此商品的情況存在。則設(shè)計的SQL語句如下:

        需要注意的是:在含有“全是”語義中,不能用謂詞IN來代替EXISTS,如果使用IN的話,則查詢結(jié)果中會還有男女客戶都購買的商品編號。當(dāng)然,此類問題還可以使用=all謂詞加以實現(xiàn)。

        3.2 語義中有“全部”“、每個”或“至少包含”的情況

        例:為了統(tǒng)計不同客戶購買商品的情況,查詢購買過全部商品的客戶名。

        問題分析:查詢購買過全部商品的客戶姓名,即找這樣的商品名,不存在某一個商品他不購買的情況。通過等價的語義轉(zhuǎn)換,同樣可以把SQL語句設(shè)計成EXISTS的形式如下:

        同樣,此類問題的SQL查詢語句也不能使用IN代替EXISTS。

        3.3 語義中有否定的“沒有”、“未”的情況

        例:為了統(tǒng)計哪些商品未曾有過銷售記錄,求沒有客戶購買過的商品名。

        問題分析:沒有客戶購買過的商品名,即找這樣的商品,在商品銷售表中不存在該商品有銷售記錄。轉(zhuǎn)換為等價的帶有EXISTS的SQL語句如下:

        執(zhí)行的結(jié)果如圖4所示,由于本數(shù)據(jù)庫中不存在哪個商品未銷售過,所以執(zhí)行結(jié)果為空。

        這種類型同樣能夠解決諸如“查詢購買了那個商品,但沒有購買另一種商品”的情況。

        3.4 語義中有“既…又”、“并且”和“或”的情況

        例:查詢購買了商品編號“s1001”,并且又購買了商品編號“s2002”的客戶名。

        問題分析:此類問題同樣可轉(zhuǎn)換為帶有EXISTS的SQL語句,設(shè)計的語句如下:

        其執(zhí)行結(jié)果如圖5所示。

        4.結(jié)束語

        在數(shù)據(jù)庫原理課程的教學(xué)中,帶有EXISTS的SQL查詢語句一直以來是教學(xué)中的一個難點,也是學(xué)生最頭痛的問題,文章以SQL Server2005為實現(xiàn)環(huán)境,通過實際的案例研究,總結(jié)出在SQL語句的設(shè)計中,如何正確靈活地使用EXISTS的情況,更好地掌握SQL語句的書寫技巧。

        [1]李春葆,數(shù)據(jù)庫原理及應(yīng)用系統(tǒng)解析[M].北京:清華大學(xué)出版社,2002.

        [2]高榮芳等,數(shù)據(jù)庫原理[M].西安:西安電子科技大學(xué)出版社,2003.

        [3]苗雪蘭等,數(shù)據(jù)庫系統(tǒng)原理及應(yīng)用教程[M].北京:機械工業(yè)出版社,2007.

        [4]肖海蓉.SQL中分組查詢的設(shè)計與應(yīng)用[J].計算機與數(shù)字工程,2009,5:85-87.

        [5]肖海蓉.關(guān)系代數(shù)中“除法”運算與SQL中帶有exists子查詢的對比教學(xué)[J].電腦學(xué)習(xí),2009,5:158-159.

        猜你喜歡
        謂詞量詞等價
        集合、充要條件、量詞
        十二生肖議量詞
        被遮蔽的邏輯謂詞
        ——論胡好對邏輯謂詞的誤讀
        量詞大集合
        黨項語謂詞前綴的分裂式
        西夏研究(2020年2期)2020-06-01 05:19:12
        n次自然數(shù)冪和的一個等價無窮大
        中文信息(2017年12期)2018-01-27 08:22:58
        量詞歌
        也談“語言是存在的家”——從語言的主詞與謂詞看存在的殊相與共相
        收斂的非線性迭代數(shù)列xn+1=g(xn)的等價數(shù)列
        環(huán)Fpm+uFpm+…+uk-1Fpm上常循環(huán)碼的等價性
        精品国产一区二区三区九一色| 国产欧美精品区一区二区三区| 亚洲免费观看网站| 精品国产又大又黄又粗av| 免费国产一区二区视频| 扒开腿狂躁女人爽出白浆| 爽爽午夜影视窝窝看片| 国产丝袜精品丝袜一区二区| 国产色第一区不卡高清| 国产在线高清无码不卡| 国产影院一区二区在线| 人成午夜大片免费视频77777 | 久久精品人人做人人爽| 日韩精品欧美激情亚洲综合| 9l国产自产一区二区三区| 国产精品婷婷久久爽一下| 国产真实夫妇交换视频| 亚洲欧美日韩国产精品一区| 亚洲国产成人久久精品美女av| 性色av一二三天美传媒| 色播久久人人爽人人爽人人片av| 欧美韩国精品另类综合| av人妻在线一区二区三区| 成年免费a级毛片免费看无码| 亚洲国产成人va在线观看天堂| 草莓视频中文字幕人妻系列 | 中文字幕国产精品一二三四五区| 精品久久欧美熟妇www| 亚洲都市校园激情另类| 精品中文字幕精品中文字幕| 国色天香中文字幕在线视频| 玩两个丰满老熟女| 久久久精品人妻一区二区三区日本| 国产亚洲91精品色在线| 激情内射日本一区二区三区| 无码不卡免费一级毛片视频| 成人在线观看视频免费播放| 无码gogo大胆啪啪艺术| 国内精品久久久久久无码不卡| 美女叉开双腿让男人插| 亚洲国产精品一区二区毛片|