• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
LvGJ
沉迷学习不秃头
博客园    首页    新随笔    联系   管理    订阅  订阅
复试_Ex2013_

复试__Ex2013_

三、如下关系模式 Discuss(user1,user2,topic)
插入时 user1 的字典序号总是小于 user2

  1. 写 SQL 语句:所有被 Alice 和 Bob 讨论但不被 Alice 和 Crowe 讨论的话题
  2. 写 SQL 语句:被超过 10 对用户讨论的话题的个数
  3. 为什么不给所有单属性建立索引,说出至少 2 条原因。
  4. 数据库管理员如何为数据库建立一组好的索引。
select d1.topic
from Discuss d1 
where d1.user1 = 'Alice' 
		and d1.user2 = 'Bob'
		and d1.topic not in (select
                            from Discuss d2 
                            where d2.user1 = 'Alice'
                            	and d2.user2 = 'Crowe')
select count(*)
from (select d.topic
from Discuss d
group by d.topic
having count(*) > 10) as tmp
  1. 三个方面:时间、空间、后期维护

应该建立索引的条件

  1. 在经常需要搜索的列上,可以加快搜索的速度;

  2. 在作为主键的列上,强制该列的唯一性和组织表中数据的排列结构;

  3. 在经常用在连接的列上,这些列主要是一些外键,可以加快连接的速度;

  4. 在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的;外键建索引由于连接加快还会减少死锁几率。

  5. 在经常需要排序的列上创建索引,因为索引已经排序,这样查询可以利用索引的排序,加快排序查询时间;

  6. 在在经常使用在 WHERE 子句中的列上面创建索引,加快条件的判断速度。

(1)将以上关系模式分解到3NF,在主码下面划线,请用箭头标识外码和它指向的主码之间的联系。请注意,分解到3NF后,以上性质有些可能不再成立(10分

(2)A到H哪些性质继续成立(10分)

(3)对于新的关系模式不满足的性质,数据库管理员如何使得性质继续成立?(10分)

  1. Professor(professor_id ,professor_name,professor_office_id)
    Student(student_id,student_name,studeng_office_id,student_designated_refrigerator_id) references Refrigerator

    Refrigerator(refrigerator_id,refrigerator_owner_id,refrigerator_size)

    Secretary(Secretary_id,Secretary_name,Secretary_office)

  2. A,C,D,E

  3. 创建关系:

    1. Wroks(professor_id,student_id) References Professor,Student
    2. Pro_Sec(professor_id ,Secretary_id) References Professor,Secretary

五、关系模式(A,B,C,D,E,F,{AB->C,BC->AD,D->F,CF->B}),请问{A,B}的属性闭包是什么?

闭包算法:P191

  1. X0 = AB, 求B

  2. B = C,/这里的B是指从AB推出来的/

  3. \(X^{1} = X^{0} \cup B\) = ABC

这时候再用X1 代替X0继续算法

得到答案:ABCDF

posted on 2020-03-14 14:35  LvGJ  阅读(155)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3