『数据库』 朴实无华且枯燥的数据库教程–入门必看!(不,真的吃亏了) (会用到连接运算,固定写法,连接运算在下面不用着急看) Table NSA2: 等价于 先假设两张表: Table NSA2: 如果执行: 注释:union自带去重 (会用到连接运算,固定写法,连接运算在下面不用着急看) Table NSA2: 其实所有的链接运算都是都是建立在笛卡尔积上的,笛卡尔积就是不舍弃任何全外连接,可以这么理解,但是cross join 象征着返回所有的情况,默认不使用 where进行过滤的。 Table Subject: 等值连接是从关系R与S的广义笛卡尔积中选取A、B属性相等的那些元组,按照属性相同的行将两(或以上)张表元组匹配连接; ID_MingZhu 表 ② 自然连接 自然连接是特殊的等值连接,要求两个关系中进行比较的分量必须是同名的属性组,并且在结果中把重复的属性列去掉。 举个例子: ID_MingZhu 表 ③ 左外连接 ID_MingZhu 表 ④ 右外连接 ID_Name表 ID_MingZhu 表 例子 ID_MingZhu 表 写在最后: 如果有什么想看的,可以私信我,如果在能力范围内,我会发布相应的博文!一、交
先假设两张表:
Table NSA1:
Name
Sex
Age
张三
男
18
李四
跨性别者
21
王五
女
18
韩七
男
12
Name
Sex
Age
张三
男
18
李四
男
21
王五
女
18
赵六
女
18
韩七
女
12
SELECT a.Name,a.Sex FROM NSA1 a INNER JOIN NSA2 b ON a.Name=b.Name AND a.Sex =b.Sex
SELECT a.Name,a.Sex FROM NSA1 a INNER JOIN NSA2 b USING(Name ,Sex )
Name
Sex
Age
张三
男
18
王五
女
18
二、并
Table NSA1:
Name
Sex
Age
张三
男
18
李四
男
21
王五
女
18
韩七
男
12
Name
Sex
Age
张三
男
18
李四
男
21
王五
女
18
赵六
女
18
韩七
男
12
SELECT Name,Sex FROM NSA1 UNION ALL SELECT Name,Sex FROM NSA1
Name
Sex
Age
张三
男
18
李四
男
21
王五
女
18
韩七
男
12
张三
男
18
李四
男
21
王五
女
18
赵六
女
18
韩七
男
12
SELECT Name,Sex FROM NSA1 UNION SELECT Name,Sex FROM NSA1
Name
Sex
Age
张三
男
18
李四
男
21
王五
女
18
韩七
男
12
赵六
女
18
三、差
先假设两张表:
Table NSA1:
Name
Sex
Age
张三
男
18
李四
男
21
王五
女
18
赵六
女
18
韩七
男
12
Name
Sex
Age
张三
男
18
李四
男
21
王五
女
18
韩七
男
12
SELECT a.Name, a.Sex FROM NSA1 a LEFT JOIN NSA2 b ON a.Name= b.Name AND a.Sex= b.Sex WHERE b.Name IS NULL
Name
Sex
Age
赵六
女
18
四、笛卡尔积
举例:
Table Name :
Name
朱小明
刘小华
Subject
语文
数学
法律
select * from Name cross join Subject order by Name;
Name
Subject
刘小华
数学
刘小华
法律
刘小华
语文
朱小明
法律
朱小明
语文
朱小明
数学
五、连接查询
连接运算是关系的二目运算.关系R与关系S的连接运算是从两个关系的广义笛卡尔积中选取属性间满足一定条件(称为连接条件,记为AθB)的元组形成一个新关系。
①等值连接
举个例子
ID_Name表
ID
Name
1
大好人
2
大坏蛋
3
猪八戒
4
孙悟空
5
沙和尚
7
唐三藏
8
武松
ID
MingZhu
3
西游记
4
西游记
5
西游记
7
西游记
8
水浒传
SELECT * FROM ID_Name N,ID_MingZhu M WHERE N.ID=M.ID;
ID_Name.ID
Name
ID_MingZhu.ID
MingZhu
3
猪八戒
3
西游记
4
孙悟空
4
西游记
5
沙和尚
5
西游记
7
唐三藏
7
西游记
8
武松
8
水浒传
ID_Name表
ID
Name
1
大好人
2
大坏蛋
3
猪八戒
4
孙悟空
5
沙和尚
7
唐三藏
8
武松
ID
MingZhu
3
西游记
4
西游记
5
西游记
7
西游记
8
水浒传
SELECT * FROM ID_Name N natural join ID_MingZhu M ON N.ID=M.ID;
ID_Name.ID
Name
MingZhu
3
猪八戒
西游记
4
孙悟空
西游记
5
沙和尚
西游记
7
唐三藏
西游记
8
武松
水浒传
将返回右表的所有行。如果左表的某行在右表中没有匹配行,则将为右表返回空值左连接:
例子:
ID_Name表
ID
Name
1
大好人
2
大坏蛋
3
猪八戒
4
孙悟空
5
沙和尚
7
唐三藏
8
武松
ID
MingZhu
3
西游记
4
西游记
5
西游记
7
西游记
8
水浒传
9
红楼梦
SELECT * FROM ID_Name N left join ID_MingZhu M ON N.ID=M.ID;
ID_Name.ID
Name
ID_MingZhu.ID
MingZhuNu
1
大好人
NULL
NULL
2
大坏蛋
NULL
NULL
3
猪八戒
3
西游记
4
孙悟空
4
西游记
5
沙和尚
5
西游记
7
唐三藏
7
西游记
8
武松
8
水浒传
将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值;
例子
ID
Name
1
大好人
2
大坏蛋
3
猪八戒
4
孙悟空
5
沙和尚
7
唐三藏
8
武松
ID
MingZhu
3
西游记
4
西游记
5
西游记
7
西游记
8
水浒传
9
红楼梦
SELECT * FROM ID_Name N right join ID_MingZhu M ON N.ID=M.ID;
ID_Name.ID
Name
ID_MingZhu.ID
MingZhuNu
3
猪八戒
3
西游记
4
孙悟空
4
西游记
5
沙和尚
5
西游记
7
唐三藏
7
西游记
8
武松
8
水浒传
NULL
NULL
9
红楼梦
左表和右表都不做限制,所有的记录都显示,两表不足的地方用null 填充
ID_Name表
ID
Name
1
大好人
2
大坏蛋
3
猪八戒
4
孙悟空
5
沙和尚
7
唐三藏
8
武松
ID
MingZhu
3
西游记
4
西游记
5
西游记
7
西游记
8
水浒传
9
红楼梦
SELECT * FROM ID_Name N full join ID_MingZhu M ON N.ID=M.ID;
ID_Name.ID
Name
ID_MingZhu.ID
MingZhuNu
1
大好人
NULL
NULL
2
大坏蛋
NULL
NULL
3
猪八戒
3
西游记
4
孙悟空
4
西游记
5
沙和尚
5
西游记
7
唐三藏
7
西游记
8
武松
8
水浒传
NULL
NULL
9
红楼梦
Name:风骨散人,目前是一名双非在校大学生,预计考研,热爱编程,热爱技术,喜欢,知识无界,希望我的可以帮到你!名字的含义:我想有一天我能有能力随心所欲不逾矩,不总是向生活低头,有能力让家人拥有富足的生活而不是为了生计而到处奔波。“世人慌慌张张,不过是图碎银几两。偏偏这碎银几两,能解世间惆怅,可让父母安康,可护幼子成长 …”
文章主要内容:
Python,C++,C语言,JAVA,C#等语言的教程
ACM题解、模板、算法等,主要是数据结构,数学和图论
设计模式,数据库,计算机网络,操作系统,计算机组成原理
Python爬虫、深度学习、机器学习
计算机系408考研的所有专业课内容
目前还在更新中,先关注不迷路。微信公众号,cnblogs(博客园),ImapBox同名“风骨散人”
感谢大家的阅读!😘你的、、关注是对我最大的鼓励!
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算