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)
谢谢大家!
你可以这样做:
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)
请注意:我假设了列的名称,因为您没有在问题中指定它们.