本人大二学子。近段时间在做数据库复习题的时候遇到一道题,如下。

有关系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,当时我自己做的结果是三个都正确。看了答案后,总是觉得 i 和 ii 不就是一样的吗?后来百度,哈哈,这题倒是出现过了很多便,在不同的

资料中,看了很多,都没解析。一时间,百度已经帮不了我了。只能自己翻书看定义。

π,课本上定义的是 取出属性列组成新的关系,就是组成新的表。突然,恍然大悟。如果是这样的话,选项 ii 中,先执行(πS_ID,SCORE (SC) )这句,

那么这个新的表里就没有年龄列,只有S_ID和SCORE,这样的话,σ age>22,前面的这句就在一个没有age属性的表里去进行  行 选择,这自然就是错的了。

上面上居于课本定义的主观臆测。为求验证,请看 iii (σage>22 (πS_ID,SCORE,AGE (SC) ) ),它的这句比 ii 的多了个age的列。结果一目了然,我上面

的解析很可能是正确的。

最新文章

  1. JS splice() 定义和用法
  2. iOS Storyboard全解析
  3. 虚拟机开机提示:This virtual machine appears to be in use
  4. tab切换jquery代码
  5. 解决IE6 IE7 JSON.stringify JSON 未定义问题
  6. Windows系统的线程调度与软件中断分发
  7. 3223: Tyvj 1729 文艺平衡树
  8. 团队作业1——团队展示&博客作业查重系统
  9. HTTP协议7之Cookie--转
  10. 下载 mysql 数据库 的步骤 完整版
  11. Messenger在MVVM模式中的应用
  12. Java 高级框架——Mybatis(一)
  13. Java File类与文件IO流总结
  14. 【Spark-SQL学习之一】 SparkSQL
  15. tf 数据读取
  16. 使用两个栈来完成一个队列,需要是实现的功能有add,poll.peek
  17. ASP.NET Web API实践系列06, 在ASP.NET MVC 4 基础上增加使用ASP.NET WEB API
  18. sqrtx-开平方
  19. fis前端开发框架
  20. 使用HttpClient进行远程接口测试

热门文章

  1. Python之路【第四篇】python基础 之基本数据类型之集合
  2. js,css控制网页内容不让选中和复制
  3. 基于webdriver的jmeter性能测试-Selenium IDE
  4. Xamarin的不归路-使用Gorilla Player实时预览XAML
  5. Daily Scrum02 12.17
  6. C# WinForm 导出导入Excel/Doc 完整实例教程[使用Aspose.Cells.dll]
  7. nginx 软连接
  8. DBImport v3.3 中文版发布:数据库数据互导及文档生成工具(IT人员必备)
  9. .NET中那些所谓的新语法之三:系统预定义委托与Lambda表达式
  10. Linux的原子操作与同步机制