SQL学习简单样例(一):CROSS JOIN

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 实例

样例数据:


 要求:用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.序号

执行结果:

 

 

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

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行。

猜你喜欢

转载自zxlyecf2.iteye.com/blog/2013731