当第一个表的每行与第二个表,被称为笛卡尔每行组合加入或交叉连接。在一般的话,我们可以说,SQL CROSS JOIN返回集合从连接表行的笛卡尔乘积。
我们可以指定一个CROSS以两种方式连接:
- 使用JOIN语法。
- 在表FROM子句中不使用WHERE子句。
SQL十字语法加入
SELECT * FROM [TABLE1] CROSS JOIN [TABLE2]
OR
SELECT * FROM [ TABLE1] ,[TABLE2]
让我们以两个表的一个例子,
表1 – MatchScore
播放机 | DEPARTMENT_ID | 目标 |
---|---|---|
Franklin | 1 | 2 |
Alan | 1 | 3 |
Priyanka | 2 | 2 |
Rajesh | 3 | 五 |
表2 – 部门
DEPARTMENT_ID | 部门名称 |
---|---|
1 | IT |
2 | HR |
3 | 营销 |
SQL语句:
SELECT * FROM MatchScore CROSS JOIN Departments
执行这个查询后,你会发现以下结果:
播放机 | DEPARTMENT_ID | 目标 | Depatment_id | 部门名称 |
---|---|---|---|---|
Franklin | 1 | 2 | 1 | IT |
艾伦 | 1 | 3 | 1 | IT |
Priyanka | 2 | 2 | 1 | 它 |
Rajesh | 3 | 五 | 1 | IT |
富兰克林 | 1 | 2 | 2 | HR |
Alan | 1 | 3 | 2 | HR |
Priyanka | 2 | 2 | 2 | HR |
拉杰什 | 3 | 5 | 2 | HR |
Franklin | 1 | 2 | 3 | 营销 |
Alan | 1 | 3 | 3 | Marketing |
普里 | 2 | 2 | 3 | Marketing |
Rajesh | 3 | 5 | 3 | 营销 |
评论前必须登录!
注册