- 1、本文档共138页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
合并理论与实作-南华大学资讯管理学系暨研究所.ppt
第 八 章合併理論與實作;本章內容 ;前言 ;8-1 關聯式代數運算子 ;8-2、非集合運算子;8-2.1、限制(Restrict) ;【概念圖】 ;【實例】請在下列的學生選課表中,請找出課程學分數為3的記錄?
【解答】以SQL達成關聯式代數的運算功能
【執行結果】;8-2.2 投影(Project) ;【概念圖】 ;【實例】請在下列的學生選課表中,請找出學生「姓名」與「課程名稱」?
【解答】以SQL達成關聯式代數的運算功能
【執行結果】;8-2.3 卡氏積(Cartesian Product);【概念圖】 ;【實例】請在下列的「學生表」與「課程表」中,請找出學生表與課程
表的所有可能配對的集合?
【解答】
1.分析:
已知:學生表R1 (學號,姓名,課號)
課程表R2 (課號,課名,學分數)
兩個資料表的「卡氏積」,可以表示為:
學生表R1 (學號,姓名,課號) ╳ 課程表R2 (課號,課名,學分數)=新資料表R3
R1有(r1=3)個屬性,(m=2)筆記錄,R2有(r2=3)個屬性,(n=3)筆記錄,
R3會有(r1+r2)個屬性=6個屬性
新資料表R3(學號,姓名,學生表.課號,課程表.課號,課名,學分數)
R3會有(m ×n)筆記錄=6筆記錄;在資料記錄方面,每一位學生(2位)均會對應到每一門課程資料(3門),亦即二位學生資料,產生(2×3)=6筆記錄。如下圖所示:
因此,「學生表」與「課程表」在經過「卡氏積」之後,共會產生6筆記錄,如下圖所示:
;以上面所產生的六筆記錄中,不知您是否有發現,有一些不太合理的記錄。
例如:「張三」只選修課號為C001,但是卻多出了兩筆不相關的紀錄(C002,C003)。因此,如何從「卡氏積」所展開的全部組合中,挑選出合理的記錄,就必須要再透過下一章節所要介紹的「內部合併(Inner Join)」。;2.撰寫「關聯式代數」與「SQL」
;8-2.4 合併(Join) ;【概念圖】 ;【合併的分類】 ;二、結果合併:(不需要FK?PK)
(一)Cross Join(卡氏積)
(二)Union(聯集)
(三)Intersect(交集)
(四)Except(差集)
;8-2.4.1 內部合併(Inner Join);【兩種作法】 ;【實例】 ;1.分析
從上圖中,我們就可以將此條關聯線條寫成:
學??表.課號=課程表.課號
因此,我們將這兩個資料表進行「卡氏積」運算,其結果如下圖所示,接下來,從展開後的記錄中,找尋那幾筆記錄具有符合「學生表.課號=課程表.課號」的條件,亦即「學生表」的「課號」等於「課程表」的「課號」。
;2.撰寫SQL程式碼
(1)第一種做法:(Equi-Join最常用)
(2)第二種做法:INNER JOIN
【執行結果】;3.綜合分析:
當我們欲查詢的欄位名稱是來源於兩個或兩個以上的資料表時,如下表所示:;則必須要進行以下的分析:
步驟一:辨識「目標屬性」及「相關表格」
學生資料表(學號,姓名,系碼)
? ?
選課資料表(學號,課號,成績)
?
?目標屬性:學號, 姓名, 平均成績
?相關表格:學生資料表, 選課資料表
;步驟二:將相關表格進行「卡氏積」
【執行結果】總共產生20筆記錄及6個欄位數;步驟三:進行「合併(Join);本題以「內部合併」為例」,
亦即在Where 中加入「相關表格」的關聯性
【執行結果】產生5筆記錄
;步驟四:加入限制條件
【執行結果】產生4筆記錄;步驟五:投影使用者欲「輸出的欄位名稱」
【執行結果】投影出4個欄位;步驟六:使用群組化及聚合函數
【執行結果】
;步驟七:使用「聚合函數」之後,再進行篩選條件
【執行結果】各人平均成績大於或等於90分者;步驟八:依照某一欄位或「聚合函數」結果,來進行「排序」。
【執行結果】由低分到高分;4.結論:
「學生表」與「課程表」在經過「卡氏積」之後,會展開成各種組合,並產生龐大記錄,但大部份都是不太合理的配對組合。
所以,我們就必須要再透過「內部合併(Inner Join)」來取出符合「限制條件」的記錄。因
您可能关注的文档
最近下载
- 厦门市粮油质量监测和军粮供应中心简化程序招聘笔试备考题库及完整答案详解1套.docx VIP
- 2025福建厦门市粮油质量监测和军粮供应中心简化程序招聘3人模拟试卷含答案详解.docx VIP
- 厦门市粮油质量监测和军粮供应中心招聘笔试真题2024.docx VIP
- 《电工与电子技术》课程思政教学案例.docx VIP
- 《电工电子学》课程思政教学案例.docx VIP
- 社团课程《气鼓鼓的河豚》小学延时服务课件.pptx VIP
- 2024年蚌埠市临港建设投资集团及所属公司招聘27人笔试模拟试题及答案解析.docx VIP
- 机电安装质量标准化图册(中建三局).pptx VIP
- 消防投标文件.pdf VIP
- 大唐圣教序分析.ppt VIP
文档评论(0)