999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

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

2010-04-16 09:15:38肖海蓉
電腦與電信 2010年9期
關(guān)鍵詞:語(yǔ)義數(shù)據(jù)庫(kù)

肖海蓉

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

1.引言

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

2.案例導(dǎo)入

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

表1 商品表

表2 客戶(hù)表

3.帶有EXISTS的SQL語(yǔ)句的實(shí)例設(shè)計(jì)

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

表3 產(chǎn)品銷(xiāo)售表

3.1 語(yǔ)義中有“全是”的情況

例:為了統(tǒng)計(jì)商品銷(xiāo)售的情況,查詢(xún)?nèi)恰芭笨蛻?hù)購(gòu)買(mǎi)的商品編號(hào)。

問(wèn)題分析:即在查找結(jié)果中的商品編號(hào)沒(méi)有“男”客戶(hù)購(gòu)買(mǎi)過(guò)此商品。可以使用間接的方法,先求客戶(hù)購(gòu)買(mǎi)過(guò)的所有商品編號(hào)以及男客戶(hù)購(gòu)買(mǎi)的商品編號(hào),兩者再做差運(yùn)算就可得到所求結(jié)果,這時(shí)使用SQL語(yǔ)句提供的組合查詢(xún)minus,則設(shè)計(jì)查詢(xún)語(yǔ)句如下:

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

需要注意的是:在含有“全是”語(yǔ)義中,不能用謂詞IN來(lái)代替EXISTS,如果使用IN的話(huà),則查詢(xún)結(jié)果中會(huì)還有男女客戶(hù)都購(gòu)買(mǎi)的商品編號(hào)。當(dāng)然,此類(lèi)問(wèn)題還可以使用=all謂詞加以實(shí)現(xiàn)。

3.2 語(yǔ)義中有“全部”“、每個(gè)”或“至少包含”的情況

例:為了統(tǒng)計(jì)不同客戶(hù)購(gòu)買(mǎi)商品的情況,查詢(xún)購(gòu)買(mǎi)過(guò)全部商品的客戶(hù)名。

問(wèn)題分析:查詢(xún)購(gòu)買(mǎi)過(guò)全部商品的客戶(hù)姓名,即找這樣的商品名,不存在某一個(gè)商品他不購(gòu)買(mǎi)的情況。通過(guò)等價(jià)的語(yǔ)義轉(zhuǎn)換,同樣可以把SQL語(yǔ)句設(shè)計(jì)成EXISTS的形式如下:

同樣,此類(lèi)問(wèn)題的SQL查詢(xún)語(yǔ)句也不能使用IN代替EXISTS。

3.3 語(yǔ)義中有否定的“沒(méi)有”、“未”的情況

例:為了統(tǒng)計(jì)哪些商品未曾有過(guò)銷(xiāo)售記錄,求沒(méi)有客戶(hù)購(gòu)買(mǎi)過(guò)的商品名。

問(wèn)題分析:沒(méi)有客戶(hù)購(gòu)買(mǎi)過(guò)的商品名,即找這樣的商品,在商品銷(xiāo)售表中不存在該商品有銷(xiāo)售記錄。轉(zhuǎn)換為等價(jià)的帶有EXISTS的SQL語(yǔ)句如下:

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

這種類(lèi)型同樣能夠解決諸如“查詢(xún)購(gòu)買(mǎi)了那個(gè)商品,但沒(méi)有購(gòu)買(mǎi)另一種商品”的情況。

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

例:查詢(xún)購(gòu)買(mǎi)了商品編號(hào)“s1001”,并且又購(gòu)買(mǎi)了商品編號(hào)“s2002”的客戶(hù)名。

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

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

4.結(jié)束語(yǔ)

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

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

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

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

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

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

猜你喜歡
語(yǔ)義數(shù)據(jù)庫(kù)
語(yǔ)言與語(yǔ)義
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
“上”與“下”語(yǔ)義的不對(duì)稱(chēng)性及其認(rèn)知闡釋
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
認(rèn)知范疇模糊與語(yǔ)義模糊
“深+N季”組配的認(rèn)知語(yǔ)義分析
語(yǔ)義分析與漢俄副名組合
主站蜘蛛池模板: 又粗又大又爽又紧免费视频| 成年网址网站在线观看| 亚洲精品视频网| 亚洲欧美一区二区三区蜜芽| 亚洲区视频在线观看| 欧美精品v欧洲精品| 国产免费久久精品99re不卡 | 国产精品xxx| 1024你懂的国产精品| 国产一区二区三区精品久久呦| 午夜老司机永久免费看片| a国产精品| 在线观看欧美国产| 国模视频一区二区| 亚洲性日韩精品一区二区| 国产xxxxx免费视频| 香蕉久久国产精品免| 在线观看亚洲天堂| 欧美在线三级| 欧美日韩国产成人在线观看| 毛片手机在线看| 日韩中文欧美| 亚洲精品国产精品乱码不卞| 亚洲精品视频在线观看视频| 国产一在线观看| 国产免费人成视频网| 亚洲av日韩综合一区尤物| 四虎影视国产精品| 香蕉久久永久视频| 亚洲人在线| 色综合热无码热国产| 国产高清免费午夜在线视频| 国产在线欧美| 视频一本大道香蕉久在线播放| 亚洲精品在线91| 美女一级毛片无遮挡内谢| 一级毛片免费观看不卡视频| 欧美三级不卡在线观看视频| 五月天在线网站| 国产高颜值露脸在线观看| 国产一在线| 久久青草精品一区二区三区| 一级毛片基地| 极品私人尤物在线精品首页| 欧美一级夜夜爽www| 老熟妇喷水一区二区三区| 任我操在线视频| a级高清毛片| 国产女人综合久久精品视| 亚洲Va中文字幕久久一区| 久久久精品无码一区二区三区| 日本午夜影院| 午夜国产精品视频黄| 啪啪永久免费av| 夜夜操天天摸| 黄色在线网| 又爽又大又黄a级毛片在线视频| 亚洲香蕉久久| 中文字幕乱码中文乱码51精品| 欧美三級片黃色三級片黃色1| 中文字幕人妻无码系列第三区| 亚洲一区无码在线| 久久精品这里只有精99品| 成人av专区精品无码国产| 精品無碼一區在線觀看 | 特级欧美视频aaaaaa| 亚洲精品片911| 久久这里只有精品66| 久久久久免费看成人影片| 国产精品永久久久久| 国产剧情一区二区| 国产亚洲精品va在线| 欧美午夜在线播放| 欧美精品黑人粗大| 亚洲国产系列| 1024国产在线| 日韩精品一区二区三区swag| 欧美一级黄色影院| 99一级毛片| 日本免费一区视频| 中文成人在线| 日本亚洲国产一区二区三区|