Вставка SQL с выбором и параметром
Привет у меня проблема
declare @target_date datetime
set @target_date=GETDATE();
insert into table1 ([column1],[column2],[column3])
(select [column1],[column2] from table2 where id=@id), @target_date
Как я могу решить эту проблему
Вставить
Table1.Column1 = Table2.Column1
Table1.Column2 = Table2.Column2
Table1.Column3=@target_date
2 ответа
Решение
declare @target_date datetime
set @target_date=GETDATE();
insert into table1 ([column1],[column2],[column3])
select [column1],[column2], @target_date from table2 where id=@id
Просто сделайте переменную значением вычисляемого столбца
Вам не нужно () для выбора команды после вставки, и вы должны переместить @target_date внутри команды выбора.