联接-----交叉联接
2014-05-04 22:52
204 查看
在逻辑上,交叉联接是一种最简单的联接。交叉联接只实现一个逻辑查询步骤(笛卡尔积)。这一步是对输入的两个表进行操作,把它们联接起来,生成二者的笛卡尔积。也就是将一个输入表的每行与另一个表的所有行进行匹配。如果一个表有m行,而另一个表有n行,将得到m*n行的结果集。
SQL Server 支持交叉联接的两种标准语法:
ANSI SQL-92
SELECT C.custid,E.empid FROM dbo.Customers AS C
CROSS JOIN dbo.Employees AS E
ANSI SQL-89
SELECT C.custid,E.empid FROM dbo.Customers AS C,dbo.Employees AS E
推荐使用ANSI SQL-92语法
自联接:对同一个表的多个实例也可以进行联接,这种功能就是所谓的自联接(self-join),所有基本联接类型(交叉联接、内联接,以及外联接)都支持自联接。
注意:在自联接中,必须为表起别名。如果不为表指定别名,联接结果中的列名就会有歧义。
SQL Server 支持交叉联接的两种标准语法:
ANSI SQL-92
SELECT C.custid,E.empid FROM dbo.Customers AS C
CROSS JOIN dbo.Employees AS E
ANSI SQL-89
SELECT C.custid,E.empid FROM dbo.Customers AS C,dbo.Employees AS E
推荐使用ANSI SQL-92语法
自联接:对同一个表的多个实例也可以进行联接,这种功能就是所谓的自联接(self-join),所有基本联接类型(交叉联接、内联接,以及外联接)都支持自联接。
注意:在自联接中,必须为表起别名。如果不为表指定别名,联接结果中的列名就会有歧义。
相关文章推荐
- C# ListView用法详解
- linux 小技巧总结
- C#学习之XML中序列化对象
- jqm 事件速记表
- MFC VIEW多窗口分割使用 和CHtml等等14.5.4
- C语言经典算法100例-067-练习使用指针2
- vim及相关插件配置
- Java中的Callable和Future
- sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- 利用向量积(叉积)计算三角形的面积和多边形的面积
- c12
- linux字符集添加和设置
- U盘提示未格式化 三种修复及数据恢复方法
- C++ 编译单元和命名空间
- 404错误页面的设置
- leetcode第一刷_Single Number II
- scanf函数用法
- 企业建站系统MiinCMP1.0.5 版发布!
- 分数类
- UseGuessDateClass