【数据库系统概论(基础篇)】 第三章 关系数据库标准语言SQL

思考

1.【视图的定义与更新】为什么不需要一个alter view的语句?
视图是从基本表导出的 数据库中只存放视图的定义而不存放视图对应的数据 视图是一个虚表 用户可以在视图上再定义视图 所以不需要

2.【SQL特点】如何理解SQL是非过程的语言?
SQL进行数据操作时,只要提出做什么,而无须指明怎么做,因此无须了解存取路径。存取路径的选择以及SQL的操作过程由系统自动完成。

3.【基本查询语句】如何让查询结果的列显示顺序与数据库中的列顺序不一样?
在查询过程中输入对象时,按照希望得到的列的顺序输入列名即可。得到的结果将按照列名输入的顺序排列,而非按照表的列顺序排列。
若SELECT * 则查询结果的列显示顺序和数据库中的列顺序相同;若SELECT < >, < >, < >, … 将数据表的每一列按照自己想要的顺序完整列出,则可以达到列显示顺序和数据库中的列顺序不同的目的。

4.【对条件语句的理解】Having和where的作用何不同?什么时候having的条件可以用where条件来取代而结果不变?
WHERE的条件作用于表,HAVING的条件作用于聚集函数分的组,如果聚集函数分组的结果是整张表为一个大组,则WHERE与HAVING的作用结果相同。

5.【自然连接】怎么理解“自然连接”,它与等值连接有什么不同?
自然连接可以视为特殊的等值连接,等值连接会有重复的列,但是自然连接会自动去除重复列。

10.【查询转换】什么是“不相关子查询”?如何转换成连接查询?
不相关子查询,内查询不依赖于外层,执行过程,首先执行内查询内查询得到,结果不被显示出来,而是传递给外层查询作为外层查询的条件来使用,然后执行外层查询,并显示查询结果。 转为连接查询就是把子查询内表和外部表连接。

11.【EXIST谓词】如何理解EXIST子查询的返回结果?
带有EXISTS的子查询根据子查询是否有记录返回确定条件是否成立。如果子查询有记录返回则EXISTS函数返回真,否则为假。

12.【UNION操作】两个查询在什么情况下可以自行UNION操作?
参与集合操作的各查询结果的列数相同,对应项的数据类型也必须相同。(?)

13.【空值的处理】对于一个数值类型字段,空值和0值相同吗?
不相同,0值代表该记录对应属性的值为0,空值则表示该记录对应的属性值不存在、暂不确定或是暂时不便填写。

14.【可更新视图】请解释with CHECK option 子句的作用?
with check option的作用主要是保证当用户通过视图对记录进行修改、插入、删除时,这些操作能满足视图定义中的谓词条件,同时保证修改后的视图在后续的操作中能正常、正确地工作。

15.【视图的作用】为什么说视图机制可以提供数据的逻辑独立性?
视图对应的数据库三级模式中的外模式,基本表对应的数据库中的模式,那么视图是从模式就基本表里头抽取数据出来的,当因为数据库重构等原因发生模式改变时,只需要修改视图的定义而维持外模式不变,应用程序通过外模式访问数据的方式就无需改变,从而提供了数据的逻辑独立性。由于视图的更新是由条件的,故只能在一定程度上提供数据的逻辑独立性。


难点

1.带有比较运算符的子查询中的相关子查询

解:x是表SC的别名,又称为元组变量,可以用来表示SC的一个元组。内层查询是求一个学生所有选修课程平均成绩的,至于是哪个学生的平均成绩要看参数x.Sno的值,而该值是与父查询相关的,因此这类查询称为相关子查询。

求解相关子查询不能像求解不相关子查询那样一次将子查询求解出来,然后求解父查询。内层查询由于与外层查询有关,因此必须反复求值。
【数据库系统概论(基础篇)】 第三章 关系数据库标准语言SQL_第1张图片
【数据库系统概论(基础篇)】 第三章 关系数据库标准语言SQL_第2张图片
【数据库系统概论(基础篇)】 第三章 关系数据库标准语言SQL_第3张图片
【数据库系统概论(基础篇)】 第三章 关系数据库标准语言SQL_第4张图片
2.带有EXISTS谓词的子查询
(1)SQL中没有全称量词(for all),但是可以把带有全称量词的谓词转换为等价的带有存在量词的谓词:(∀x)P ≡ ┓(ョx(┓P))。由于没有全称量词,可将题目的意思转换成等价的用存在量词的形式:查询这样的学生,没有一门课程是他不选修的。
【数据库系统概论(基础篇)】 第三章 关系数据库标准语言SQL_第5张图片
【数据库系统概论(基础篇)】 第三章 关系数据库标准语言SQL_第6张图片
(2)
【数据库系统概论(基础篇)】 第三章 关系数据库标准语言SQL_第7张图片
【数据库系统概论(基础篇)】 第三章 关系数据库标准语言SQL_第8张图片
【数据库系统概论(基础篇)】 第三章 关系数据库标准语言SQL_第9张图片

你可能感兴趣的:(数据库笔记)