【2017-03-13】Tsql 表连接
笛卡尔积 穷举
在未建立连接的情况下,将car表的name列和brand表的brand_name列进行笛卡尔积查询后,实际是将两列相乘,进行穷举,列举出所有可能性
表连接:将多个表不同列的数据查询到一起
1.横向连接
select 列a,列b from 表p,表q where p.o=q.o o为两表中同时拥有的一列
另一种写法 select 列a,列b from 表p join 表q on p.o=q.o
例:select Student.Sno,Sname,Cno,Degree from Student,Score where Student.Sno=Score.Sno
= select Student.Sno,Sname,Cno,Degree from Student join Score on Student.Sno=Score.Sno
在 join前加上left 是以 join左边的表为主 select Student.Sno,Sname,Cno,Degree from Student left join Scroe on Student.Sno=Scroe.Sno
在 join前加上right是以join右边的表为主 select Student.Sno,Sname,Cno,Degree from Student right join Scroe on Student.Sno=Scroe.Sno
2.纵向连接 两个表之间添加 union
只有两个表列数一样,每列对应的数据类型一样,才可以进行纵连接