3.6.2 域关系演算语言QBE
  关系演算的另一种形式是域关系演算。域关系演算以元组变量的分量即域变量作为谓词变元的基本对象。1975年由M.M.Zloof提出的QBE就是一个很有特色的域关系演算语言,该语言于1978年在IBM370上得以实现。
  QBE是Query By Example,即通过例子进行查询的简称,它是一种高度非过程化的基于屏幕表格的查询语言,用户通过终端屏幕编辑软件以填写表格的方式构造查询要求,而查询结果也是以表格形式给出,因此非常直观。由于QBE屏幕可视化性能好、理论性强、用户界面友好和使用方便等特点,吸引了广大学者对其进行研究。在QBE语言的基础上发展的语言有50多种,许多微型计算机上的DBMS都有QBE语言的影子。例如,FoxPro、Access等小型数据库管理系统。
  QBE语言中用示例元素表示查询结果的数据类型,示例元素实际上就是域变量。QBE的操作框架如图3-9。
  QBE使用的命令操作符主要包括:
 (1)显示和更新命令符:P.、D.、I.、U.分别表示显示、删除、插入和更新操作。
 (2)取值范围操作符:ALL.、UNQ.分别表示选取满足条件的所有值和不重复的值。
 (3)聚合操作命令符:AVG.、MAX.、MIX.、SUM.、CNT.分别表示求平均值、最大值、最小值、求和、计数等。
 (4)其他命令符:分组命令G.、升序排序AO.、降序排序DO.等。
  下面通过一些示例说明QBE的查询和更新操作过程,有兴趣的同学可以自学。

  1.检索操作
   (1) 简单查询
   (2) 条件查询
   (3) 集合函数
   (4) 对查询结果进行排序
  2.更新操作
   (1) 修改操作
   (2) 插入操作
   (3) 删除操作