Сохранить динамическую таблицу как представление / таблицу - PullRequest
0 голосов
/ 07 мая 2018

Я только что написал сценарий здесь, но я не знаю, как сохранить его как представление или таблицу. Динамически создает столбцы из строк

 DECLARE @columns NVARCHAR(MAX), @sql NVARCHAR(MAX);
SET @columns = N'';
SELECT  @columns += N', p.' + QUOTENAME([Period])
  FROM (SELECT p.Period FROM dbo.[refv_IRR3_Op_Rev] AS p
  INNER JOIN [dbo].[refv_IRR3_Op_Rev] AS o
  ON p.RMDF = o.RMDF 
  GROUP BY P.Period) AS x;
SET @sql = N'
SELECT [Region]
      ,[LAU]
      ,[RMDF]
      , ' + STUFF(@columns, 1, 2, '') + '
FROM
(
  SELECT [Region]
      ,[LAU]
      ,[RMDF]
      ,[Period]
      ,[Net_Operating_Cashflow]
  FROM [FTTx_Build].[dbo].[refv_IRR3_Op_Rev]

) AS j
PIVOT
(
  SUM([Net_Operating_Cashflow]) FOR Period IN ('
  + STUFF(REPLACE(@columns, ', p.[', ',['), 1, 1, '')
  + ')
) AS p;';
PRINT @sql;
EXEC sp_executesql @sql;

Как сохранить его как представление или таблицу?

1 Ответ

0 голосов
/ 07 мая 2018

короткий ответ: вы не можете.Однако вы можете создать хранимую процедуру из своего кода и вызывать ее, когда вам нужны эти результаты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...