首页 > 代码库 > 【2017-03-13】Tsql 表连接

【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

只有两个表列数一样,每列对应的数据类型一样,才可以进行纵连接

技术分享

【2017-03-13】Tsql 表连接