从多个表中插入数据

时间:2013-08-02 09:07:19

标签: asp.net join insert sql-server-2008-r2

我有一个名为sec_user的表,其中包含名为

的列
[track_id]    [int] IDENTITY(1,1) NOT NULL,
[submit_don]  [datetime] NULL,
[page_title]  [varchar](100) NULL,
[url]         [varchar](500) NULL,
[emp_details] [varchar](5000) NULL,
[ip]          [varchar](20) NULL,
[referer_url] [varchar](500) NULL,
[user_id]     [int] NULL,
[profile_id]  [int] NULL,

此处名为[user_id]的列和[profile_id]必须从employee_tbl和profile_tbl插入,其余列必须通过普通插入语句插入。

此处user_id在两个表employee_tbl和profile_tbl 中都很常见。所以我想为特定的user_id **

插入记录

1 个答案:

答案 0 :(得分:1)

只需使用insert tablename为使用数据获取数据的select语句添加前缀。 例如 如果您有客户和订单,并且您想要一个ActiveCustomerOrders表

Insert ActiveCustomerOrders(CustomerName,OrderID,Order_Date,SomeOtherColumn) 
Select c.CustomerName,o.OrderID, o.OrderDate, 'SomeValue'  From Customers c
Inner Join Orders o On o.CustomerID = c.CustomerID
Where O.Fulfilled = 0