SQL使用变量INSERT到表变量中

时间:2017-08-24 18:26:25

标签: sql sql-server

以下代码有效:

DECLARE @Data  TABLE ( EMPID INT)
DECLARE @D     DATE  = DATEADD(d, -1, GETDATE())
DECLARE @SQL   NVARCHAR(500)
DECLARE @Param NVARCHAR(500)

SET @SQL =     'SELECT TOP 10 EMPID FROM udf_Test( @1, @2 ) la'
SET @Param =   '@1 VARCHAR(10), @2 VARCHAR(10)'

INSERT @Data ( RetailerID )
EXECUTE sp_executesql @SQL, @Param,  @1=@D, @2=@D
SELECT * FROM @Data

但是,我想为插入字符串使用变量。我该怎么做?

这是我试过的迭代之一,没有运气......

DECLARE @Data   TABLE ( EMPID INT)
DECLARE @D      DATE = DATEADD(d, -1, GETDATE())

DECLARE @Insert NVARCHAR(500) 
DECLARE @SQL    NVARCHAR(500)
DECLARE @Param  NVARCHAR(500)

SET @Insert = 'INSERT @Data( EMPID ) '
SET @SQL    = 'SELECT TOP 10 EMPID FROM udf_Test( @1, @2 ) la '
SET @Param  = '@1 VARCHAR(10), @2 VARCHAR(10)'

EXECUTE sp_executesql @Insert + @SQL, @Param,  @1=@D, @2=@D
SELECT * FROM @Data

感谢您的帮助!

*这不重复。提供的链接不回答如何使用insert子句的变量,只回答select。

0 个答案:

没有答案