如何使用表1和表2编写一个sql查询来创建“newtable”,其结果类似于下面的“newtable”?
Table1
EmmployeeID
| 1 |
| 2 |
| 3 |
Table2
AgencyID
| a |
| b |
| c |
NewTable
|EmmployeeID|AgencyID|
| 1 | a |
| 1 | b |
| 1 | c |
| 2 | a |
| 2 | b |
| 2 | c |
| 3 | a |
| 3 | b |
| 3 | c |
4条答案
按热度按时间epggiuax1#
使用
CROSS APPLY
或者CROSS JOIN
. 例如,yuvru6vn2#
合并两个表通常意味着
JOIN
.生成行的每个可能组合(“配对”)通常意味着“笛卡尔积”,也称为
CROSS JOIN
,如下所示:f8rj6qna3#
尝试使用
fivyi3re4#
创建第三个表,然后
INSERT
通过执行CROSS JOIN
的Table1
以及Table2
```CREATE TABLE NewTable
(
EmployeeID int,
AgencyID varchar,
);
INSERT INTO NewTable
select EmployeeID, AgencyID
from Table1 CROSS JOIN Table2