SQL Server - 插入两个表的组合

MMe*_*les 2 sql t-sql sql-server insert

我需要在SQL Server中组合两个表.但是我需要对表A的每个项目与表B的每个项目都有一行,从而产生一个表C.我会是这样的:

Table A
A
B
C
D

Table B
1
2
3

Table C
column x | cloumn Y
   A           1
   A           2
   A           3
   B           1
   B           2 
   B           3
   C           1
   C           2
   C           3
   D           1
   D           2
   D           3
Run Code Online (Sandbox Code Playgroud)

谢谢大家!

Mah*_*mal 6

你可以这样做:

SELECT 
 a.a + CAST(b AS VARCHAR(2)) AS a
FROM tablea a
CROSS JOIN tableb AS b;
Run Code Online (Sandbox Code Playgroud)

看到它的实际效果:

然后你可以使用该INTO子句将它们插入到已经存在的表中:

INSERT INTO tablec(c)
SELECT 
 a.a + CAST( b AS VARCHAR(2)) AS a
FROM tablea a
CROSS JOIN tableb AS b;
Run Code Online (Sandbox Code Playgroud)

或者从这些值创建一个新表:

SELECT 
 a.a + CAST( b AS VARCHAR(2)) AS c
INTO Tablec
FROM tablea a
CROSS JOIN tableb AS b;
Run Code Online (Sandbox Code Playgroud)

更新了SQL小提琴演示

请注意:我假设了列的名称,因为您没有在问题中指定它们.