带有子查询的SQL INSERT

The*_*Man 1 sql t-sql sql-server

我有一个2列的表.我想提供第1列值,但使用select语句查询另一个表以找出将在第一个表的第二列中的值.

这是我想出的,但我知道是错的..

INSERT INTO VehicleModels_VehicleSubModels (VehicleModelId, VehicleSubModelYearId)
(SELECT @ModelId, VehicleSubModelYearId 
FROM VehicleSubYearIntermediate 
WHERE SubModelId=@SubModelId 
AND YearId=@YearId)
Run Code Online (Sandbox Code Playgroud)

本质上我想为VehicleModelIdthrough 提供值@ModelId,但它不会让我在select语句之外使用它.

Ada*_*Dev 5

尝试删除SELECT周围的括号,因为你看到错误的语法错误?

INSERT INTO VehicleModels_VehicleSubModels (VehicleModelId, VehicleSubModelYearId)
SELECT @ModelId,VehicleSubModelYearId 
FROM VehicleSubYearIntermediate 
WHERE SubModelId=@SubModelId 
    AND YearId=@YearId
Run Code Online (Sandbox Code Playgroud)