【SQL】连接(五):交叉连接

定义

      交叉联接返回左表中的所有行,左表中的每一行与右表中的所有行组合。交叉联接也称作笛卡尔积。


      交叉连接只能通过Where作条件关键字,不能使用On关键字
      不带WHERE条件子句,它将会返回被连接的两个表的笛卡尔积,返回结果的行数等于两个表行数的乘积。

      如果带where,返回或显示的是匹配的行数。where子句,往往会先生成两个表行数乘积的数据表,然后才根据where条件从中选择。

适用

       多对多关系(查询结果为两表记录相组合)

关键字

       CROSS JOIN  :又称笛卡儿积

SQL语句

       

    select * from title  CROSS JOIN publishers
       等价于

    select * from title,publishers 

案例讲解

       上面说到了,查询结果量是两个表数据量相乘得到,那什么条件才会需要这样的数据呢?以图书和出版商来说,图书有多种分类,每种分类每个出版商都可以生产,且出版商有多个,查询图书出版的情况,这就需要图书类别数与出版商数进行组合(相乘)得到结果了。




以上内容,仅供参考!如有咨询或建议,请留言921804412@qq.com

评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值