我有表EMPLOYEE
,它们PROJECT
之间DM_Manager
没有关系。这 3 个表是从名为 的父表创建的Resource
。
Project 表和 DM_Manager 表的主键是使用 Identity 列生成的。
我想从每个表中获取 PK 列,从 Resource 表中获取几列并创建一个新表。
请帮我解决这个问题。我是 SQL Server 的新手。
我有表EMPLOYEE
,它们PROJECT
之间DM_Manager
没有关系。这 3 个表是从名为 的父表创建的Resource
。
Project 表和 DM_Manager 表的主键是使用 Identity 列生成的。
我想从每个表中获取 PK 列,从 Resource 表中获取几列并创建一个新表。
请帮我解决这个问题。我是 SQL Server 的新手。
How about:
SELECT r.*, e.Id, p.Id, d.Id
INTO New_Table
FROM Resource r
LEFT OUTER JOIN Employee e ON e.Id = r.EmployeeId
LEFT OUTER JOIN Project p ON p.Id = r.ProjectId
LEFT OUTER JOIN DM_Manager d ON d.Id = d.ManagerId
..that is, assuming that the tables Employee, Project and DM_Manager are unrelated to each other but all are related to the Resource table.
如果根本没有关系,则可以使用:
INSERT INTO newtable (empID, projID, managerID, resourceID, resourcefield1)
SELECT employee.id, project.id, dm_manager.id, resource.id, resource.field1
FROM employee, project, dm_manager, resource;