关系数据库小测练习笔记(1)

第二题

关系 R (A, B) 有 m 个元组,关系 S (B, C) 有 n 个元组,关系 R 和 S 的自然连接最多可能有多少个元组?单选题 (1 分) 1 分 A.max (m, n) B.n C.mn D.m E.m+n

问题分析

给定两个关系:

  • R(A, B) 有 m 个元组
  • S(B, C) 有 n 个元组

自然连接 R ⋈ S 的结果基于公共属性 B 进行连接。需要计算自然连接后可能的最大元组数量。

最大元组数的条件

自然连接的最大元组数出现在以下情况:

  • R 和 S 中所有元组的 B 值完全相同,即 R 和 S 在 B 上的取值完全一致。
  • 此时,R 的每个元组与 S 的每个元组都能匹配,形成笛卡尔积。

计算最大元组数

在这种最理想情况下:

  • R 的每个元组(共 m 个)与 S 的每个元组(共 n 个)都能匹配。
  • 因此,最大元组数为 m × n。

第三题

假设关系 R (A) 有 r 个各不相同的元组,关系 S (A) 有 s 个各不相同的元组,R - S 有 t 个元组。

**下列关于 (r, s, t) 组合可能的是哪个?**单选题 (1 分) 0 分

A.(8, 2, 2) B.(5, 3, 4) C.(5, 10, 15) D.(10, 5, 15)

问题分析

关系 R 和 S 都是基于属性 A 的关系,R - S 表示在 R 中但不在 S 中的元组。根据集合差运算的定义,R - S 的结果必须满足以下条件:

  1. R - S 的元组数 t 不可能超过 R 的元组数 r,即 t ≤ r。
  2. R - S 的元组数 t 的最小值为 r - s (当 S 的所有元组都包含在 R 中时),最大值为 r(当 R 和 S 没有共同元组时)。因此,t 的取值范围是 max(0, r - s) ≤ t ≤ r。

选项验证

对每个选项进行验证,判断是否满足 t 的取值范围。

选项 A: (8, 2, 2)
  • r = 8, s = 2, t = 2
  • t 的取值范围:max(0, 8 - 2) = 6 ≤ t ≤ 8
  • 实际 t = 2 不满足 t ≥ 6
  • 不可能。
选项 B: (5, 3, 4)
  • r = 5, s = 3, t = 4
  • t 的取值范围:max(0, 5 - 3) = 2 ≤ t ≤ 5
  • 实际 t = 4 满足 2 ≤ 4 ≤ 5
  • 可能。

唯一满足条件的组合是 B.(5, 3, 4)。

第四题

下列关于数据物理独立性正确的说法有哪些?单选题 (1 分) 1 分 A.Physical data independence means that the logical representation of the data is independent of its physical representation in memory and on disk. B.Physical data independence means that the data is compressed. C.Physical data independence means that the relations in database are physically independent of each other.

关于数据物理独立性的正确说法

数据物理独立性(Physical Data Independence)是指数据库的逻辑结构与物理存储结构相互独立,修改物理存储结构不会影响逻辑结构或应用程序。以下是题目中各选项的分析:

选项A
正确。数据物理独立性意味着数据的逻辑表示与其在内存和磁盘上的物理表示是独立的。这允许在不改变应用程序或逻辑模式的情况下修改物理存储结构(如索引、文件组织等)。

选项B

错误。数据压缩是一种存储优化技术,与数据独立性无关。

选项C

错误。关系数据库中表的物理独立性并非指表之间物理存储的隔离性,而是指逻辑模式与物理存储的分离。

正确答案 A

第五题

关于关系 T (A, B) 的 SQL 查询语句:Select ____ From T Group by A,空格中可以填入的表达式有哪些?多选题 (1 分) 0 分 A.sum (B) B.B C.sum (A) D.A

可填入的表达式分析

在SQL的GROUP BY子句中,SELECT列表中的表达式必须满足以下条件之一:

  • 出现在GROUP BY子句中(如列A)
  • 是聚合函数(如SUM()、COUNT()等)

选项解析:

A. SUM(B)

合法。B未出现在GROUP BY中,但通过SUM()聚合函数处理,符合语法规则。

B. B

不合法。B未出现在GROUP BY中且未使用聚合函数,会导致语法错误。

C. SUM(A)

语法合法但逻辑矛盾。A已在GROUP BY中分组,对其求和通常无实际意义(除非重复值需合并)。

D. A

合法。A是GROUP BY的分组列,可直接出现在SELECT中。

正确答案

A (SUM(B))和 D (A)是可填入的正确选项。
B 和C不符合要求(B语法错误,C逻辑冗余)。

相关推荐
普通人62 天前
WebGL与WebGPU入门指南
开发语言·webgl·1024程序员节
猫猫不是喵喵.2 天前
从0到1创建一个微服务项目
java·数据库·微服务·1024程序员节
fish_zzzz6 天前
笔记-论数据结构2
1024程序员节
普通人66 天前
PHP文件读写完全指南
开发语言·php·1024程序员节
Martina_03217 天前
AI生成3D场景从白模换成精模后镜头全偏了?用6步检查单位、枢轴与层级替换
图像处理·人工智能·3d·ai·自然语言处理·材质·1024程序员节
星云_byto8 天前
CSS布局
人工智能·机器学习·目标跟踪·1024程序员节
张小姐的猫10 天前
【MySQL】访问 & 数据流动原理
android·数据库·mysql·adb·1024程序员节
工业HMI实战笔记11 天前
印刷电路板HMI:SMT贴装的元件定位界面
制造·设计规范·设计语言·1024程序员节
Martina_032112 天前
AI生成3D模型一合并网格,材质就串色?用6步检查材质槽、UV与图集重映射
图像处理·人工智能·3d·材质·uv·游戏策划·1024程序员节
橙光成长12 天前
android-ad-cleaner:android免 Root 批量关闭系统开屏与营销推送
android·1024程序员节