您的位置:首页 > 其它

联接-----交叉联接

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),所有基本联接类型(交叉联接、内联接,以及外联接)都支持自联接。

注意:在自联接中,必须为表起别名。如果不为表指定别名,联接结果中的列名就会有歧义。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: