zoukankan      html  css  js  c++  java
  • 数据库~~~投影与除操作

    投影运算的含义简单点就是:从表中选择需要的属性列。

    列是属性,行是元组..
    而且作投影之后可能会出现重复项,比如:
    A B C
    a1 b1 c1
    a1 b2 c2
    a2 b2 c3
    作A的投影就是a1, a2; 减少了一行
    总结:
    并:属性不变,元组可能增加(集合相等时不增加)
    交:属性不变,元组可能减少(集合相等时不减少)
    投影:属性可能减少(全投影时不减少),元组可能减少(投影后无重复项时不减少)
    笛卡尔积:属性增加,元组可能增加(只有1个元组时不增加)

    除运算:
    R:
    
    
    A
    B
    C
    a1
    b1
    c2
    a2
    b3
    c7
    a3
    b4
    c6
    a1
    b2
    c3
    a4
    b6
    c6
    a2
    b2
    c3
    a1
    b2
    c1
    
    
    S:
    
    
    B
    C
    D
    b1
    c2
    d1
    b2
    c1
    d1
    b2
    c3
    d2
    
    
    R÷S
    
    
    A
    a1
    
    
    /*
    
    
    (1) 找S与R的共同属性,其元组看做整体 k
    
    
    (2)选择R中包含k的 非S与R相同属性的 属性 即为R÷S
    
    
    */
    
    
    解答如下:
    
    
    在关系R中,A可以取四个值{a1,a2,a3,a4},其中:
    
    
    a1的象集为:{(b1,c2),(b2,c3),(b2,c1)}就是a1 对应bc属性上的值
    
    
    a2的象集为:{(b3,c7),(b2,c3)}
    
    
    a3的象集为:{(b4,c6)}
    
    
    a4的象集为:{(b6,c6)}
    
    
    S在(B,C)上的投影为{(b1,c2),(b2,c3),(b2,c1)}。,只取BC两列
    
    
    显然只有a1的象集(B,C)a1包含S在(B,C)属性组上的投影,全部包含,所以R÷S={a1}。

    数据库 什么操作最费时间啊?
     笛卡尔积,选择,投影,除。应该是笛卡尔积,因为属性增加了,计算量也随之而增加
  • 相关阅读:
    HDU1879 kruscal 继续畅通工程
    poj1094 拓扑 Sorting It All Out
    (转)搞ACM的你伤不起
    (转)女生应该找一个玩ACM的男生
    poj3259 bellman——ford Wormholes解绝负权问题
    poj2253 最短路 floyd Frogger
    Leetcode 42. Trapping Rain Water
    Leetcode 41. First Missing Positive
    Leetcode 4. Median of Two Sorted Arrays(二分)
    Codeforces:Good Bye 2018(题解)
  • 原文地址:https://www.cnblogs.com/fickleness/p/3259433.html
Copyright © 2011-2022 走看看