關系數據庫域關系演算語言QBE
阿新 • • 發佈:2017-06-01
多列 orm 信息 表格 sum 劃線 strong 要求 元素
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