1、交叉连接cross join,查询出来的结果是两张表中数据的乘积

例如:表A有2条数据,表B有3条数据,通过交叉连接进行查询,会将A表中的每一条数据都去和B表中的所有数据做一次关联

--创建两张表,分别插入数据
create table TestA(id int identity(1,1) primary key not null,UserName nvarchar(50) not null,
)
gocreate table TestB(id int identity(1,1) primary key not null,UserName nvarchar(50) not null,
)
go
insert into TestA(UserName) values ('张三'),('李四')
insert into TestB(UserName) values ('王五'),('赵六'),('田七')select * from TestA cross join TestB

A表中的张三与B表中的王五、赵六、田七都关联查询一次,李四也同样

id   UserName    id  UserName
1   张三  1   王五
1   张三  2   赵六
1   张三  3   田七
2   李四  1   王五
2   李四  2   赵六
2   李四  3   田七

2、cross join带上where进行查询,就相当于是inner join

--加上where条件,相当于Inner join
select * from TestA cross join TestB where TestB.id = 2
--两句查询结果相等
select * from TestA a,TestB b where b.id=2

得出结果都是下面这个

id   UserName    id  UserName
1   张三  2   赵六
2   李四  2   赵六

Sqlserver交叉连接cross join(笛卡尔积)相关推荐

  1. [Mysql] CROSS JOIN 交叉连接

    数据导入 DROP TABLE IF EXISTS `students`; CREATE TABLE `students` (`id` int(11) NOT NULL,`name` varchar( ...

  2. SQL——左连接(Left join)右连接(Right join)内连接(Inner join) 笛卡尔积(Cross Join)

    ​Left join 即左连接,是以左表为基础,根据ON后给出的两表的条件将两表连接起来.结果会将左表所有的查询信息列出,而右表只列出ON后条件与左表满足的部分.左连接全称为左外连接,是外连接的一种. ...

  3. SQL的各种连接(cross join、inner join、full join)的用法理解

    SQL中的连接可以分为内连接,外连接,以及交叉连接 . 1. 交叉连接CROSS JOIN 如果不带WHERE条件子句,它将会返回被连接的两个表的笛卡尔积,返回结果的行数等于两个表行数的乘积: 举例, ...

  4. 11、CROSS JOIN:交叉连接(笛卡尔积)

    前面所讲的查询语句都是针对一个表的,但是在关系型数据库中,表与表之间是有联系的,所以在实际应用中,经常使用多表查询.多表查询就是同时查询两个或两个以上的表. 在 MySQL 中,多表查询主要有交叉连接 ...

  5. 交叉连接(CROSS JOIN)

    9.3.5  交叉连接(CROSS JOIN) 除了在FROM子句中使用逗号间隔连接的表外,SQL还支持另一种被称为交叉连接的操作,它们都返回被连接的两个表所有数据行的笛卡尔积,返回到的数据行数等于第 ...

  6. SQL查询cross join 的用法(笛卡尔积)

    [转自]http://www.cnblogs.com/chenxizhang/archive/2008/11/10/1330325.html CROSS JOIN又称为笛卡尔乘积,实际上是把两个表乘起 ...

  7. 使用笛卡尔积 cross join解决傻傻的问题

    select * from (( select invname from bd_invbasdoc where rownum <=5)cross join (select custname fr ...

  8. mysql数据库交叉连接_MySQL交叉连接(CROSS JOIN)

    在本教程中,您将了解MySQL CROSS JOIN子句以及如何应用它来解决一些有趣的数据问题. MySQL CROSS JOIN子句简介 CROSS JOIN子句从连接的表返回行的笛卡儿乘积. 假设 ...

  9. mysql join 与 cross join 效率_浅析Mysql Join语法以及性能优化

    在讲MySQL的Join语法前还是先回顾一下联结的语法,呵呵,其实连我自己都忘得差不多了,那就大家一起温习吧,这里我有个比较简便的记忆方法,内外联结的区别是内联结将去除所有不符合条件的记录,而外联结则 ...

  10. sql join 示例_SQL CROSS JOIN与示例

    sql join 示例 In this article, we will learn the SQL CROSS JOIN concept and support our learnings with ...

最新文章

  1. python多进程_python语法:多进程
  2. php系统升级说明,PHPCMF内容管理框架 v4.2.7 升级说明
  3. dict()与{},list()与[]性能对比
  4. 计算机除法和取余在实际运用中的意义
  5. 使用Properties集合存储数据,遍历取出Properties集合中的数据
  6. oracle 输出到页面,利用Xming 将Linux 图形界面输出到Windows上
  7. Django开发中常用的命令总结
  8. layui多文件选择之后自动上传
  9. 数值范围_量比指标怎么看?量比数值的意义
  10. HTTP相关知识 --转载
  11. Atitit session机制的实现 目录 1. Web状态管理 Cookie 和 Session。 token 1 2. session 管理设计 1 2.1. session 的存储(可以
  12. fm -rf 删除 恢复
  13. javasript | 鼠标经过表格行变色
  14. U盘量产工具-缩水盘恢复实际容量
  15. flutter comsumer局部刷新的问题
  16. 助力自动驾驶商业化 高德公布高精地图技术路线图
  17. [计算机网络]第二章——应用层
  18. xml基础教程详细总结
  19. FPGA——FIFO
  20. vue之使用Cropper进行图片剪裁上传压缩

热门文章

  1. bus hound usb 调试
  2. Java入门基础第3天《使用记事本编写运行Java程序》
  3. MDui库又一次更新了,重构了绘制的相关逻辑
  4. uniapp小程序webSocket封装、断线重连、心跳检测
  5. spring bean生命周期源码剖析
  6. 51单片机与蓝牙模块连接
  7. 电脑翻译,百度翻译电脑桌面版
  8. linux服务器怎么安装360杀毒软件,360主机卫士Linux版使用安装教程
  9. 360杀毒软件安装在windows2003系统的解决方法
  10. macOS升级到Big Sur之后Goland提示找不到svn命令