如何从2个不同的表中将数据插入到一个表中?

时间:2014-11-18 09:53:07

标签: sql-server

我有2张桌子

1.patient table(patientUid,and few fields) 
2.individual table(practiceUid,and few fields).

我创建了一个表

#temp(patientUid,PracticeUid) 

我希望从患者表和单个表中获取临时表中列的信息。 我知道如何为另一个表列中的一个特定列分配值。但我不知道如何为2个不同的表列中的2列分配数据。

1 个答案:

答案 0 :(得分:0)

由于我在这两个表中都没有得到任何公共列,所以查询分别从两个表中插入所有行。

INSERT INTO NEWTABLE (patientUid,PracticeUid)
   SELECT patientUid, NULL FROM PatientTable
   UNION ALL
   SELECT NULL, PracticeUid FROM IndividualTable

如果存在关系。然后我们可以使用连接。

 INSERT INTO NEWTABLE (patientUid,PracticeUid)
       SELECT A.patientUid, B.PracticeUid  FROM PatientTable A
             B.PracticeUid FROM PatientTable A INNER JOIN IndividualTable B
 ON A.CommonColumn = B.CommonColumn