.: 3.6 QBE-Language 141
141 §3.6 QBE-Language
一、QBE-|ntroduct ion The Language Based Domain Cal culus 0BE一Query by Example(举例查询语言) 美国IBM公司约克镇高级研究实验室为图形终 端设计的一种域演算语言 142
142 一、QBE-Introduction • The Language Based Domain Calculus • OBE — Query by Example(举例查询语言) • 美国IBM公司约克镇高级研究实验室为图形终 端设计的一种域演算语言
…特点: 1、直观和对话特点: 查询时用户键入:P.关系名 如:p.$,该关系的框架即出现于屏幕: S# NAME AGE SEX 然后在表上添写查询要求。 ·2、二维文法,不要求严格的查询程序描述,不同于 面向过程的语言(Procedure-or iented language) 143
143 • 特点: 1、直观和对话特点: 查询时用户键入:P.关系名 如:p.s,该关系的框架即出现于屏幕: S# NAME AGE SEX 然后在表上添写查询要求。 • 2、二维文法,不要求严格的查询程序描述,不同于 面向过程的语言(Procedure-oriented language)
3.易掌握,在框架上类似的举例, 指出查询操作。例: 找出所有男生的姓名、年龄: S S# NAME AGE SEX P.X P.Y M 第一列为关系名。 P.表示查询操作,可以是任意合法标识符, 不一定是用户要查询的属性名,但下边 必须有横线。 144
144 3.易掌握,在框架上类似的举例, 指出查询操作。例: 找出所有男生的姓名、年龄: S S# NAME AGE SEX P.X P.Y M 第一列为关系名。 P.表示查询操作,可以是任意合法标识符, 不一定是用户要查询的属性名,但下边 必须有横线
在某一域下添写查询条件: 无符号即为等号,上例为 SEX=M,M称常量元素。 可以在多个关系上查询,例: S S# NAME AGE SEX SX p.N SC S# C# GRADE 可 SX CY C# FORMAT TEACHER OFFICE CY LIU 145
145 在某一域下添写查询条件: 无符号即为等号,上例为 SEX=M,M称常量元素。 可以在多个关系上查询,例: S S# NAME AGE SEX SX p.N SC S# C# GRADE SX CY C C# FORMAT TEACHER OFFICE CY LIU
注意从常量元素LU开始的查询 及连接元素的作用。 解释过程: ①以TEACHER=LIU为条件扫描选择C,投影 产生C#集合 ②以C#∈(C)为条件扫描选择SC、投影生 成$#集合。 ③S#为关键字索NAME的值 146
146 注意从常量元素LIU开始的查询 及连接元素的作用。 解释过程: ①以TEACHER=‘LIU’为条件扫描选择C,投影 产生C#集合 ②以C#(C#)为条件扫描选择SC、投影生 成S#集合。 ③S#为关键字索引NAME 的值
QBE-Language a and Example S# NAME AGE SEX P.X <22 M 2、 SC S# C# GRADE P._SX C1 SX C2 (同时学习C1和C2) 3、SG S# C# GRADE SX P.PX ≠SX PX 147
147 二、QBE-Language and Example 1、S S# NAME AGE SEX P.X <22 M 2、SC S# C# GRADE P. SX C1 SX C2 (同时学习C1和C2) 3、SC S# C# GRADE SX P. PX ≠SX PX
4、找出各门课的课号和学习 这些课的所有学生姓名: 查询结果不在同一个已知关系中 为集中显示查询结果,用户可以向QBE索取 空白框架、组织输出关系: 索取空白框架,命名为R: R C# NAME P.CX P.SN 148
148 4、找出各门课的课号和学习 这些课的所有学生姓名: 查询结果不在同一个已知关系中 为集中显示查询结果,用户可以向QBE索取 空白框架、组织输出关系: 索取空白框架,命名为R: R C# NAME P. CX P. SN
索取关系框架: SC S# C# GRADE SX C凶 S S# NAME AGE SEX SX SN 5、 S# NAME AGE SEX ZHANG SX P >SX M 149
149 索取关系框架: SC S# C# GRADE SX CX S S# NAME AGE SEX SX SN 5、 S S# NAME AGE SEX ZHANG SX P. >SX M
三、Condition boxes (条件盒》 提供条件盒的理由: 屏幕限制,查询问题复杂时使用。 例:找出学时数小于C3课两倍,任课教师 不在Wang老师所在教研室的课号,学时 数与任课老师: 150
150 三、Condition boxes (条件盒) 提供条件盒的理由: 屏幕限制,查询问题复杂时使用。 例:找出学时数小于C3课两倍,任课教师 不在Wang老师所在教研室的课号,学时 数与任课老师: