码迷,mamicode.com
首页 > 数据库 > 详细

关系数据库域关系演算语言QBE

时间:2017-05-31 23:16:20      阅读:577      评论:0      收藏:0      [点我收藏+]

标签:优先级   image   class   多列   str   blog   屏幕   表格   条件   

 

QBE: Query By Example
? 基于屏幕表格的查询语言
? 查询要求:以填写表格的方式构造查询
? 用示例元素(域变量)来表示查询结果可能的情况
? 查询结果:以表格形式显示

QBE操作框架
技术分享

构造查询的几个要素

示例元素: 即域变量, 一定要加下划线

示例元素是这个域中可能的一个值, 它不必是查询结果中的元素
打印操作符P.: 指定查询结果所含属性列
查询条件: 不用加下划线
可使用比较运算符>, ≥,<, ≤,=和≠  其中=可以省略
排序要求
技术分享

条件查询

技术分享

 


常用集函数:

函 数 名 功 能
CNT 对元组计数
SUM 求 总 和
AVG 求平均值
MAX 求最大值
MIN 求最小值


查询信息系学生的平均年龄。
技术分享

对查询结果排序

升序排序:

对查询结果按某个属性值的升序排序,只需在相应列中填入?AO.? 

降序排序:

按降序排序则填?DO.

多列排序:

如果按多列排序,用?AO(i).? 或?DO(i).? 表示 ,其中i为排序的优先级, i值越小,优先级越高

查全体男生的姓名, 要求查询结果按所在系升序排序, 对相同系的学生按年龄降序排序。
技术分享

 

修改操作

 分两行分别表示改前和改后的示例元素

必须将操作符?U.? 放在关系上

eg:将计算机系所有学生的年龄都改为18岁

技术分享

eg:把95001学生的年龄增加1岁

技术分享

eg:将计算机系所有学生的年龄都增加1岁

技术分享

 

插入操作

eg:把信息系女生95701, 姓名张三, 年龄17岁存入数据库中。 

技术分享

 

 删除操作

eg:删除学生95089

技术分享

为保证参照完整性, 删除95089学生前, 先删除95089学生选修的全部课程
技术分享

 

 

 

关系数据库域关系演算语言QBE

标签:优先级   image   class   多列   str   blog   屏幕   表格   条件   

原文地址:http://www.cnblogs.com/vincentqliu/p/6926109.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!