交叉连接Cross Join的用法

SQL Server admin 37℃ 0评论

GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
https://cnsendnet.taobao.com
来自森大科技官方博客
http://www.cnsendblog.com/index.php/?p=2039

 

1.CROSS JOIN

除了内连接(inner jion),外连接(left join ,right join,full join),还支持交叉连接。交叉连接返回被连接两个表的卡迪尔乘积,即:

1.2 CROSS JOIN 语法

select 列名

from 表名1 cross join 表名2

where 表名1.列名=表名2.列名

 

1.3 CROSS JOIN 实例

样例数据:

1

2

要求:用cross join 语句找出两表中学生序号相同的学生,并将其所有字段组合在一个表中。

select a.序号,b.姓名,a.班级,a.年龄,b.语文,b.数学,b.地理,b.历史
from Table_4 as b cross join Table_5 as a
where a.序号=b.序号

执行结果:

3

我们可以发现,用下面语句,效果是一致的:

select a.序号,b.姓名,a.班级,a.年龄,b.语文,b.数学,b.地理,b.历史
from Table_4 as b , Table_5 as a
where a.序号=b.序号

 

注:实际上将cross join替换成“,”,效果相同。

如果不加后面的where条件语句,将会返回32行。

 

GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
https://cnsendnet.taobao.com
来自森大科技官方博客
http://www.cnsendblog.com/index.php/?p=2039

转载请注明:森大科技官方博客 » 交叉连接Cross Join的用法

喜欢 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址