save result from dynamic query
-
28-10-2019 - |
题
Is there a way to achieve this:
CREATE TABLE #TempLocal (tmpBanner nvarchar(255) )
SET @Query = 'INSERT INTO #TempLocal (tmpBanner) SELECT TOP 1 F1 FROM '+ @dbTable_Dollar
SELECT @Banner = tmpBanner FROM #TempLocal
DROP TABLE #TempLocal;
SELECT @Banner
Basically, I have a dynamic table parameter and I need to get the value from column 1 row 1.
thank,
KS
SOLUTION
DECLARE @Banner nvarchar(255),
@chvSQL NVARCHAR(300)
SELECT @chvSQL = N'SELECT TOP 1 @Banner = [F1] from '+@dbTable_Dollar
EXEC sp_executesql @chvSQL, N'@Banner varchar(50) OUTPUT', @Banner OUTPUT
解决方案 2
Solution
DECLARE @Banner nvarchar(255),
@chvSQL NVARCHAR(300)
SELECT @chvSQL = N'SELECT TOP 1 @Banner = [F1] from '+@dbTable_Dollar
EXEC sp_executesql @chvSQL, N'@Banner varchar(50) OUTPUT', @Banner OUTPUT
其他提示
You can put the result of your dynamic query on your temp table:
CREATE TABLE #TempLocal (tmpBanner nvarchar(255) )
SET @Query = 'SELECT TOP 1 F1 FROM '+ @dbTable_Dollar
INSERT INTO #TempLocal (tmpBanner)
EXEC(@Query)
SELECT @Banner = tmpBanner FROM #TempLocal
Though I recommend you take a look at this link first.
不隶属于 StackOverflow