关系数据库概念辨析❤️
文章目录
- 1 主码
- 2 范式
- 3 关系
- 4 关系代数运算
数据库系统DBS(Data Base System,简称DBS)通常由软件、数据库和数据管理员组成。
1 主码
2 范式
第一范式:简单说 列不能再分
第二范式:简单说 建立在第一范式基础上,消除部分依赖
第三范式:简单说 建立在第二范式基础上,消除传递依赖。
BCNF:主属性包含码
3 关系
做表时,1方主键要加入到多方。
4 关系代数运算
e.g S: A B R:B C
1 2 2 13 3 7 25 9 3 5
等值连接(S.A=R.C)
A S.B R.B C1 2 2 15 9 3 5
等值连接(S.B=R.B)
A S.B R.B C1 2 2 13 3 3 5
自然连接
A B C1 2 13 3 5
总结:1)等值连接必须要有等值的条件,当条件不同时连接的结果也不相同,两个关系可以没有相同的属性列
2)自然连接必须要有相同的属性列才能进行,即等值连接之后要去除相同的属性列
我们从自然连接中又发现了一个问题,如下图:
就是图中标记为红色的地方,因为不符合我们的条件在自然连接和等值连接的时候都会被丢弃,这种连接叫做内连接,而与内连接相反的就叫外连接
外连接:把R表和S表被丢弃的红色的元组捡了回来,并且在最终连接的表中没有的值用NULL替代,最终结果如下 (全外连接)
左外连接:因为R表在左边,所以最终的结果只保留R表中被丢弃的,S表的仍然丢弃
右外连接:因为S表在右边,所以最终的结果只保留S表中被丢弃的,R表的仍然丢弃
除运算太复杂 我总忘。不说了❤️
投影会去重。
关系数据库概念辨析❤️相关推荐
- 【深度学习】基于Pytorch的线性模型概念辨析和实现(二)
[深度学习]基于Pytorch的线性模型概念辨析和实现(二) 文章目录 [深度学习]基于Pytorch的线性模型概念辨析和实现(二) 1 线性回归的从零开始实现 2 训练 3 关于with 4 关于w ...
- 【深度学习】基于Pytorch的线性模型概念辨析和实现(一)
[深度学习]基于Pytorch的线性模型概念辨析和实现(一) 文章目录 1 为什么要谈线性回归? 2 建立模型基本形式 3 实现3.1 损失函数3.2 解析解3.3 小批量随机梯度下降3.4 矢量化加 ...
- 编译型与解释型、动态语言与静态语言、强类型语言与弱类型语言概念辨析
编译型与解释型.动态语言与静态语言.强类型语言与弱类型语言概念辨析 转自:https://blog.csdn.net/u010533843/article/details/76215487 编译型和解 ...
- Linux中的tty、pts、pty等概念辨析
Linux中的tty.pts.pty等概念辨析 基本概念 tty.pty.pts.ptmx tty(终端设备的统称):tty一词源于Teletypes,或teletypewriters,原来指的是电传 ...
- jdk,jre,ide概念辨析
jdk,jre,ide概念辨析 1.jdk是什么?里面有什么东西? jdk,英文全名是java development kit(java开发工具包).它是工具程序和文档的集合.里面有java工(.ex ...
- CPU 主频,核数 参数解读 物理CPU,逻辑CPU,物理核 概念辨析
Q1: CPU高主频好还是多核数好? 游戏需求 如果是主打游戏,由于游戏需要的是最简单粗暴的计算工作,这方面多核心有点无用武之地.因此,目前主流游戏都是双核心调用,四核或者更多核心的比较少. 也就是说 ...
- 混淆矩阵及分类评价指标概念辨析
分类评价指标概念辨析 这些东西其实没什么难的,而且很多人肯定也是很早就接触过了,最大的问题在于时间长了记不住,所以就尽量解释的简单写,用于下次查阅使用. 主要需要理解的就是二分类的指标. ...
- 编程语言及编译过程的概念辨析
编程语言及编译过程的概念辨析 一.高级语言于汇编语言的区别 1.汇编语言是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言.它是面向机器的程序设计语言. 2.高级语言是相对 ...
- 指令周期、时钟周期、总线周期概念辨析
<指令周期.时钟周期.总线周期概念辨析>由会员分享,可在线阅读,更多相关<指令周期.时钟周期.总线周期概念辨析(2页珍藏版)>请在人人文库网上搜索. 指令周期.时钟周期.总线周 ...
最新文章
- lua 判断为空的逻辑
- uva232corssword answers模拟
- winxp html5,超级 HTML HTMLEditor —- winXP 风格 [2]
- 优秀学生专栏——孙珩发
- es6 遍历数组对象获取所有的id_ES6对象遍历Object.keys()方法
- Replace Method with Method Object(以函数对象取代函数)
- java创建读取文件_Java实现文件的创建、读取、写入操作-Fun言
- Java基础--成员变量和局部变量(区别、重名问题)
- 嵌入式系统开发学习步骤(Linux高级编程学习顺序)
- idea解决代码冲突与乱码
- 独家揭秘,106岁的IBM靠什么完成了世纪大转型|钛度专访
- FR两个相同字符如何提取第二个字符后内容
- Truecrypt之死
- 全网解析视频接口自行测试
- vue页面引用百度地图怎么让百度logo不显示
- 太阳能逐日自动跟踪系统,太阳能光伏追光追日发电实训系统
- go语言中同一个package下的文件相互引用怎么做?
- geo读取表达矩阵 RNA-seq R语言部分(表达矩阵合并及id转换)
- 软件测试工程师简历项目经验怎么写?--10000个已成功入职的软件测试工程师简历范文模板(含北凡老师的真实简历)
- IPFS 之包管理器GX
热门文章
- torch.randn torch.rand区别
- pytorch 函数clamp
- ffmpeg 编译安装 ubuntu18.04 4.1
- 新思路!商汤开源利用无标注数据大幅提高精度的人脸识别算法
- Pytorch使用TensorboardX进行网络可视化
- AS-External-LSA
- php 管理 mysql 数据库 代码_安装并使用phpMyAdmin管理MySQL数据库_php
- 用100元买100支笔c语言,用C编程!有100块钱,买100支笔,其中钢笔3元,圆珠笔2元,铅笔0.5元,问各买多少支?...
- Ngnix负载均衡安装及配置
- oracle cols user_tab_columns,user_tab_cols和user_tab_columns的区别