基于关系域演算的QBE语言

QBE(Query By Example)简介:

  • 操作独特,基于屏幕表格的查询语言,不用书写复杂的公式,只需将条件填在表格中即可
  • 是一种高度非过程化的查询语言
  • 特别适合于终端用户的使用


QBE界面:


关系名:填入要查询的关系表格

属性名:用于显示对应关系名区关系的所有属性名

操作命令区:用于书写查询操作的命令

  • Print 或 P.    →    显示输出操作
  • Delete 或 D.    →    删除操作
  • Insert 或 I.    →    插入操作
  • Update 或 U    →    更新操作

询条件:用于书写查询条件,例如"Age<17"等

示例:

①Student表元组删除:


②找出年龄小于17岁的所有女同学:


  • 如果没有符号,则默认等号,例如上面的"Female"其实就是"=Female"
  • 各个条件之间是"且"的关系

③将张三同学的年龄更新为19岁



QBE中的"与"和"或

①找出年龄小于17或者年龄大于20的所有同学的姓名


  • 如果值下面有下划线,例如上面的X和Y,那么说明其为域变量,被称为示例元素,示例元素下划线上面的值不起作用,只用于占位或是连接条件
  • 如果只显示姓名,就在姓名那一列下面打上"P.",而不是在操作区,上同

②找出年龄大于17且小于等于20的所有同学的姓名


上面两个条件的示例元素都是X,这也意味着>17和≤20两个条件被连接了,就相当于"且"的关系

③找出年龄小于17的男生或者年龄大于20的女生的所有同学姓名


"与""或""非"可以放在操作区中,对整体条件而言,相当于将该行条件放在括号中


QBE的查询条件(用示例元素实现多个表的连接)

①查询李明老师教过的所有学生的信息


当检索涉及多个表时,可利用同一连接条件使用相同的示例元素来实现多个表的连接

②查询计算机系年龄大于19岁或者性别为男的同学的姓名


其中"张三""李四"只是为了区分,相当于是随便打的,所有下划线上面的名字都可以随意,下同


用QBE进行查询的构造

①将每位同学的年龄增加1岁


②找出比男同学张三年龄大的所有男同学的姓名


③找出成绩不及格同学的姓名及不及格的课程和分数

注意要同时打印同学姓名、课程和分数




  • 13
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值