关联式代数与计算.ppt

  1. 1、本文档共71页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
关联式代数与计算

資料庫(DB) ch05 * 5-4-3 刪除運算-說明 刪除運算: 和關聯式代數運算式的查詢十分類似 刪除運算是刪除關聯表中的值組,關聯代數是使用差集運算加上指定運算子,如下所示: R← R-T 資料庫(DB) ch05 * 例:活期存款Current_Deposit 關聯表,刪除帳戶編號為A003或金額為5000的值組(p5-29) Current_Deposit←Current_Deposit- δa_no = ‘A003’ ∨ amount = 5000 (Current_Deposit) 5-4-3 刪除運算-運算式範例 DELETE FROM Current_Deposit WHERE a_no= A003 OR amount= 5000 資料庫(DB) ch05 * 5-4-4 更新運算-說明 更新運算: 不會更新關聯表值組的全部屬性,只更新部分屬性值 關聯代數使用差集、聯集運算加上指定運算子,如下所示: R← R-(Toriginal∪Tupdate) 資料庫(DB) ch05 * 例:活期存款Current_Deposit 關聯表,更新帳戶編號A003的金額為5000 Current_Deposit←Current_Deposit- ({δa_no = ‘A003’ (Current_Deposit)∪{(‘A003’, ‘張三丰’, 5000) }) 5-4-4 更新運算-運算式範例 UPDATE Current_Deposit Set amount = 5000 WHERE a_no = A003 資料庫(DB) ch05 * 5-4-5 聚合函數-說明 聚合函數(Aggregate Functions): 一些在資料庫收集屬性值的數學函數:SUM、AVERAGE、MAXIMUM、MINIMUM和COUNT 聚合函數的基本語法,如下所示: grouping attributes function list (R) 是聚合函數符號 R是聚合函數作用的關聯表 grouping attributes: 將關聯表值組群組化的屬性清單,屬性間使用逗號分隔 function list: 使用的聚合函數清單 資料庫(DB) ch05 * 例:計算Current_Deposit 關聯表的值組數,如下所示: Result = count (a_no) (Current_Deposit) SELECT COUNT(a_no) FROM Current_Deposit 5-4-5 聚合函數-運算式範例1 資料庫(DB) ch05 * 5-4-5 聚合函數-運算式範例2 聚合函數: 通常使用在值組屬性擁有重複值的情況,使用屬性群組化就可執行聚合函數的數學運算 例如:Transcripts關聯表,如下圖所示: 資料庫(DB) ch05 * 計算每位學生的平均成績,如下所示: Result = id count(c_no), average(score) (Transcripts) SELECT COUNT(c_no) , AVG(score) FROM Transcripts GROUP BY id 5-4-5 聚合函數-運算式範例2 資料庫(DB) ch05 * 5-3-1 交集運算-語法與定義 交集運算的基本語法與定義: 若關聯表R與S都滿足聯集相容,交集運算的基本語法與定義,如下: R∩S = S∩R = { t | t∈R∧t∈S } 上述語法的聯集運算滿足交換律,也滿足結合律,運算取出屬於關聯表R且屬於關聯表S的值組 t 交集可使用差集運算來導出,如下所示: R∩S = R – (R-S) = S-(S-R) R R-S = R-(R-S) = S R R S 資料庫(DB) ch05 * 5-3-1 交集運算-運算式範例 例:Inventory1和Inventory2關聯表為例的交集運算式Result = Inventory1∩Inventory2 運算式相當於SQL語言的SELECT和INTERSECT指令SELECT * FROM Inventory1 INTERSECT SELECT * FROM Inventory2 資料庫(DB) ch05 * 5-3-1 交集運算-使用差集運算導出1 Inventory1∩Inventory2可寫成差集運算式,如下: Result = Inventory1-(Inventory1-Inventory2) 首先是Inventory1-Inventory2差集運算式的結果 Inventory1-(Inventory1-Inventory2)差集運算式的結果

您可能关注的文档

文档评论(0)

zhuwo + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档