[英]INSERT INTO Table From Two Temporary Tables
我有两个临时表,如下所示:
临时雇员
Name | Addres | Title
SMITH |CALIFORNIA| Example1
WAYNE |BANDUNG | Example2
ROSE |PARIS | Example3
临时标签
TAG | ValueTag | Desc
AZ001 |Value1 | Desc1
AZ002 |Value2 | Desc2
AZ003 |Value3 | Desc3
然后我想join
两个临时表连接到一个表,结果如下:
TB结果
Name | ValueTAG| Desc
SMITH |AZ001 | Desc1
SMITH |AZ002 | Desc2
SMITH |AZ003 | Desc3
WAYNE |AZ001 | Desc1
WAYNE |AZ002 | Desc2
WAYNE |AZ003 | Desc3
ROSE |AZ001 | Desc1
ROSE |AZ002 | Desc2
ROSE |AZ003 | Desc3
我正在尝试使用此代码来执行此操作,但是它不起作用:
INSERT INTO tbResult(NAME, VALUETAG, DESC)
SELECT (select NAME from #TempEmploye) VALUETAG, DESC
FROM #TempTag
由于没有公共字段可以Cross Join
两个表。.u可以使用Cross Join
INSERT INTO tbResult
(NAME,
VALUETAG,
DESC)
SELECT
e.Name,
t.ValueTag
t.Desc
FROM TempEmployee e
CROSS JOIN TempTag t
尝试这个:
INSERT INTO tbResult(NAME, VALUETAG, DESC)
SELECT E.NAME,T.VALUETAG, T.DESC
FROM #TempTag T
CROSS JOIN #TempEmploye E
注意:请谨慎尝试使用DESC
作为列名,因为它是SQL保留字。 如果您对DESC
有疑问,请尝试添加[]
,如下所示
INSERT INTO tbResult(NAME, VALUETAG, [DESC])
SELECT E.NAME,T.VALUETAG, T.DESC
FROM #TempTag T
CROSS JOIN #TempEmploye E
INSERT INTO tbResult
(NAME, VALUETAG, DESC)
SELECT te.NAME, tt.VALUETAG, tt.DESC
FROM #TempTag tt
Cross Join #TempEmployee te
INSERT INTO tbResult(NAME, VALUETAG, DESC)
SELECT e.NAME, t.VALUETAG, t.DESC FROM #TempEmploye e CROSS JOIN #TempTag t
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.