下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
語(yǔ)法樹學(xué)習(xí)?筆記——數(shù)據(jù)庫(kù)實(shí)現(xiàn)?原理5.2寫sql?語(yǔ)句-畫語(yǔ)法樹-邏輯查詢計(jì)?劃-簡(jiǎn)單優(yōu)化(選擇、投影)5.2.1寫sql語(yǔ)?句這部分不是?在這兒學(xué)的?,簡(jiǎn)單說(shuō)說(shuō)吧?,高手略過(guò),挑毛病也可?:舉例:查詢生于1?960年的影星的?名字:SELEC?TnameFROMMovie?StarWHERE?birth?dateLIKE’%1960’Selec?t是查詢語(yǔ)句?開頭的關(guān)鍵?字,永遠(yuǎn)不變,記住即可(別寫錯(cuò)單詞?就行)后面跟著的?是一個(gè)或多?個(gè)屬性名(在數(shù)據(jù)庫(kù)中?叫字段名),此處是影星?數(shù)據(jù)庫(kù)表的?一個(gè)字段“name”,存儲(chǔ)的是影?星的名字。注意:如果這里有?多個(gè)屬性名?,請(qǐng)用逗號(hào)“,”分隔開From也是關(guān)鍵字?,后面跟著的?是數(shù)據(jù)庫(kù)表?名,就是關(guān)系名?(R),也可以有多?個(gè),用逗號(hào)分隔?Where?查詢是條件?部分,后面跟著的?是查詢條件?表達(dá)式,由屬性名、值、運(yùn)算或比較?符號(hào)等組成?。這個(gè)例子的?查詢條件是?:生日(birth?date)屬性值為以?1960結(jié)?尾的那些記?錄,“%”是通配符(通配所有長(zhǎng)?度的字符串?,“_”只通配長(zhǎng)度?為1的字符?串),注意:用通配符時(shí)?一定要用L?ike關(guān)鍵?字哦。如果字段是?日期類型的?,快看SQL?的書吧,要對(duì)準(zhǔn)格式?的!5.2.2畫語(yǔ)法樹先看語(yǔ)法樹?中要用到的?語(yǔ)法:語(yǔ)法類<Attr>,<Rel>和<Value?>(或Patt?ern)比較特殊,因?yàn)樗鼈儾?是通過(guò)語(yǔ)法?規(guī)則定義的,而是通過(guò)它?們所代表的?原子的規(guī)則?來(lái)定義的。–Attr的?子女必須是?符合數(shù)據(jù)庫(kù)?模式中屬性?名的字符串?–Rel的子?女必須是符?合數(shù)據(jù)庫(kù)模?式中關(guān)系名?的字符串–Value?(或Patt?ern)必須是符合?SQL語(yǔ)法?的字符串或?數(shù)值看個(gè)例子吧?:假設(shè)一個(gè)數(shù)?據(jù)庫(kù)中存儲(chǔ)?著學(xué)生和系?院兩個(gè)表如?下:我們想要查?詢到所有具?有四年級(jí)學(xué)?生的系院的?名稱:Selec?tDeptN?amefromDepar?tment?,Stude?ntwhere?Stude?nt.Major?=Depar?tment?.CodeAndStude?nt.Year=4就是讓St?udent?和Depa?rtmen?t兩個(gè)表通?過(guò)“專業(yè)”Major?進(jìn)行等值連?接(join),并限定只返?回Stud?ent中有?四年級(jí)的那?些記錄語(yǔ)法樹如下?:這里只要注?意語(yǔ)法名稱?和畫法即可?。注意:1、在From?List中?的屬性名用?Rel表示?,不要用At?tr,2、如果Fro?mList?中有兩個(gè)以?上的關(guān)系(表)名,則請(qǐng)?jiān)诘诙?個(gè)以后的<Rel>的上層加入?一個(gè)<FromL?ist>!3、條件<Condi?tion>中如果有多?個(gè)條件,請(qǐng)將每個(gè)條?件用多級(jí)<Condi?tion>分層,直到最后細(xì)?化到<Attr>,<Value?>對(duì)應(yīng)的具體?屬性名稱或?值為止。5.2.3邏輯查詢計(jì)?劃樹從語(yǔ)法分析?樹到邏輯查?詢計(jì)劃樹,看一個(gè)簡(jiǎn)單?的情況的圖?例:轉(zhuǎn)換成關(guān)系?代數(shù)的方法?:–直接將所有?“簡(jiǎn)單的”selec?t-from-where?結(jié)構(gòu)轉(zhuǎn)換成?關(guān)系代數(shù),具體地:?如果有一個(gè)?屬于“SFW”成份的<query?>,并且該成份?中的<Condi?tion>沒有子查詢?,則我們可以?用一個(gè)關(guān)系?代數(shù)表達(dá)式?來(lái)替換整個(gè)?成份—selec?t列表、from列?表以及條件?,其中代數(shù)表?達(dá)式自底向?上由以下內(nèi)?容組成:–<FromL?ist>中提及的全?部關(guān)系的積?是以下操作?符的參數(shù):–選擇σC,其中C就是?要被替換成?份中的“condi?tion”表達(dá)式的參?數(shù),同時(shí)選擇又?是下面操作?符的參數(shù)–投影πL,其中L是”SelLi?st”中的屬性列?表。看下面的圖?例琢磨琢磨?:如果涉及到?嵌套查詢,那么有關(guān)如?何從條件中?去除子查詢?的部分大家?就到網(wǎng)上查?找吧,如果知道了?原理也不難?,這里就不研?究了,汗……5.2.4啟發(fā)式優(yōu)化?啟發(fā)式優(yōu)化?的原則:–盡可能地將?選擇條件下?推,盡早執(zhí)行選?擇,使得過(guò)濾后?的中間結(jié)果?盡可能地小?;–用連接(join)替換笛卡爾?積–盡可能下推?投影,在適當(dāng)?shù)奈?置增加投影?操作利用pip?eline?,減少查詢計(jì)?劃的執(zhí)行時(shí)?間看圖例吧:呵呵,上圖不需要?優(yōu)化,按照啟發(fā)式?優(yōu)化的原則?,已經(jīng)是最優(yōu)?了。這個(gè)需要優(yōu)?化:1、用join?替換了笛卡?爾積和選擇?的組合,注意替換的?細(xì)節(jié),選擇的條件?成為了jo?in的條件?,2、下推了投影?,因?yàn)橄旅鎓?rom列表?中的Dep?artme?nt是可以?提前進(jìn)行投?影的(可以減少結(jié)?果集),不過(guò)注意要?將code?一起投影下?來(lái),因?yàn)樵谏蠈?進(jìn)行joi?n時(shí)是需要?code這?個(gè)屬性的,否則將jo?in不出任?何結(jié)果,這個(gè)很重要?,一定要記住?!再看一個(gè)例?子:注意:這個(gè)例子比?上圖多了一?個(gè)下推了選?擇,下推選擇時(shí)?要注意,因?yàn)橹挥蠸?tuden?t有Yea?r(學(xué)年)的屬性,所以,只能下推到?Stude?nt那里,而且因?yàn)镈?epart?ment中?沒有Yea?r屬性,所以Joi?n時(shí)不需要?這個(gè)條件!也就是因?yàn)?以上兩個(gè)原?因
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度養(yǎng)殖場(chǎng)節(jié)能減排與綠色低碳合作協(xié)議書3篇
- 二零二五年度航空航天器加工合作協(xié)議2篇
- 2025陶瓷現(xiàn)匯外貿(mào)合同書
- 二零二五年度籃球運(yùn)動(dòng)員長(zhǎng)期保障合同3篇
- 2025年度農(nóng)村私人魚塘承包合同附漁業(yè)環(huán)保責(zé)任承諾書
- 二零二五年度汽車維修行業(yè)員工薪酬福利合同范本3篇
- 2025年度養(yǎng)殖土地租賃及農(nóng)業(yè)品牌建設(shè)合作協(xié)議3篇
- 2025年度農(nóng)機(jī)租賃與農(nóng)業(yè)廢棄物資源回收利用合作協(xié)議3篇
- 2025年度新能源充電樁建設(shè)公司成立協(xié)議書范本3篇
- 2025年度年度農(nóng)機(jī)租賃與農(nóng)業(yè)科技創(chuàng)新合作協(xié)議3篇
- 工期定額-民用建筑
- 2022年湖南生物機(jī)電職業(yè)技術(shù)學(xué)院教師招聘考試題庫(kù)及答案解析
- 衛(wèi)生部手術(shù)分級(jí)目錄(版)
- 《S7-1200-PLC-編程及應(yīng)用技術(shù)》試題試卷及答案2套
- 內(nèi)科護(hù)理學(xué)消化系統(tǒng)試習(xí)題及答案
- 用人單位職業(yè)病危害現(xiàn)狀評(píng)價(jià)技術(shù)導(dǎo)則
- 中建一局質(zhì)量考核評(píng)價(jià)辦法
- 民辦非企業(yè)單位會(huì)計(jì)報(bào)表(會(huì)民非表010203)
- 口腔頜面系統(tǒng)解剖骨
- 川骨香-川古香手撕鴨配方及制作方法
- 深圳市排水管網(wǎng)維護(hù)管理質(zhì)量
評(píng)論
0/150
提交評(píng)論