T-SQL 表连接

表连接,将多个表的数据查询到一起

(1)笛卡尔积          穷举

想查询 car表的name列和brand 表的brand_name列,使用笛卡尔积查询后,因为不知道以哪个表为准,就每个对应一遍,相当于穷举算法,列举出了所有的可能性。

 

(2)方法一:    (每一行的拼接)

 

思路:

观察原始表:

两个表存在联系,brand 和brand_code,实现两表不同列同时显示需要在两个表之间架个桥,brand=brand_code就是桥,就可以实现目的

定义:select 列a,(select 列b from 表b where 表b.桥=表a.桥)from 表(表a,表b哪个数据多用哪个)

 

 

方法二:         (每一行的拼接)

select 列a,列b from 表a, 表b where(表a.桥=表b.桥)

 

 

方法三:      (每一行的拼接)

select 列a ,列b from 表a (left/right)join 表b on 表a.桥=表b.桥           left以jion左边表为基准,right以jion右边表为基准

 

 

(3)查询两个数据类型相同列,不同表:(以列为基准拼接)

select 列a,列a1  from 表a  union select 列b,列b1 from 表b

原始表:

 

完成表:

 

posted on 2017-03-13 21:14  张鑫4477  阅读(312)  评论(0编辑  收藏  举报