我刚刚在[Driver Table
]中添加了新数据,之后,我想更新[Driver Dimension]
以获取[Driver Table]
中插入的每个新数据的值。我使用的是SQL Server 2012。
我的代码:
UPDATE [Driver Dimension]
SET [DriverID] = [DriverID]
FROM [Driver Table]
我收到此错误:
不明确的列名称' DriverID'。
两个表都有一个列,其中包含各自的主键[DriverID]
编辑:
以下是我要尝试实现的内容:我刚刚将新数据插入ID为11的[Driver Table]
:
我尝试实现的目标是,无论[Driver Table]
中有多少数据,我都会添加数据并更新[Driver Dimension]
表:
[Dimension table]
应该使用我driverid
添加的新firstname
(11)和[Driver table]
进行更新,而无需单独Insert
语句。
答案 0 :(得分:1)
使用此: 这应该适用于您的表格。
<强>更新强>
INSERT INTO [Driver Table] (DriverId , FirstName, MiddleName, LastName)
OUTPUT inserted.DriverId , inserted.FirstName
INTO [Dimension Table]
VALUES (1 , 'Rhyme' , 'Santillan' , 'Aranas')
答案 1 :(得分:0)
试试这个
Update [Driver Dimension]
SET [DriverID] = ( SELECT TOP 1 [DriverID]
From [Driver Table]
WHERE [Driver Table].[FirstName] =[Driver Dimension].[DriverName] )