关于一道数据库例题的解析。为什么σ age22 (πS_ID,SCORE (SC) ) 选项是错的?
本人大二學子。近段時間在做數據庫復習題的時候遇到一道題,如下。
有關系SC(S_ID,C_ID,AGE,SCORE),查找年齡大于22歲的學生的學號和分數,正確的關系代數表達式是( ) 。
ⅰ. πS_ID,SCORE (σ age>22 (SC) )
ⅱ. σ age>22 (πS_ID,SCORE (SC) )
ⅲ. πS_ID,SCORE (σage>22 (πS_ID,SCORE,AGE (SC) ) )
?
答案是 i和iii,當時我自己做的結果是三個都正確??戳舜鸢负?#xff0c;總是覺得 i 和 ii 不就是一樣的嗎?后來百度,哈哈,這題倒是出現過了很多便,在不同的
資料中,看了很多,都沒解析。一時間,百度已經幫不了我了。只能自己翻書看定義。
?
π,課本上定義的是 取出屬性列組成新的關系,就是組成新的表。突然,恍然大悟。如果是這樣的話,選項 ii 中,先執行(πS_ID,SCORE (SC) )這句,
那么這個新的表里就沒有年齡列,只有S_ID和SCORE,這樣的話,σ age>22,前面的這句就在一個沒有age屬性的表里去進行 ?行 選擇,這自然就是錯的了。
?
上面上居于課本定義的主觀臆測。為求驗證,請看 iii?(σage>22 (πS_ID,SCORE,AGE (SC) ) ),它的這句比 ii 的多了個age的列。結果一目了然,我上面
的解析很可能是正確的。
?
如果您認為這篇文章還不錯或者有所收獲,您可以通過掃描一下下面的支付寶二維碼 打賞我一杯咖啡【物質支持】,也可以點擊右下角的【推薦】按鈕【精神支持】,因為這兩種支持都是我繼續寫作,分享的最大動力
、總結
以上是生活随笔為你收集整理的关于一道数据库例题的解析。为什么σ age22 (πS_ID,SCORE (SC) ) 选项是错的?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用js将form表单同时提交到两个不同页
- 下一篇: ★ Flex を使って Scalable