0

私の問題: 私のストア プロシージャには動的な列があります。だから私はテーブルに挿入することはできません。だから私はExcelに直接エクスポートする必要があります。以下は私のコードです。以下のコードは正常に動作しています。ストア プロシージャから Excel を直接エクスポートするか、ストア プロシージャを使用して動的テーブルを作成する方法を教えてください。

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[usp_PIVOT_Seats]
AS
BEGIN
SET NOCOUNT ON;
DECLARE 
@cols NVARCHAR(MAX),
@stmt NVARCHAR(MAX)
SELECT @cols = ISNULL(@cols + ', ', '') + '[' + T.showdateformat + ']' FROM 
(SELECT  DISTINCT showdateformat FROM vw_Pivot_Seat_ALL) AS T

SELECT @stmt = ' SELECT * FROM vw_Pivot_Seat_ALL AS T
    pivot (SUM(T.Qty)  FOR T.showdateformat IN (' + @cols + ')) AS P'
END
EXEC sp_executesql @STMT=@STMT

助けてください

メイディーン

4

1 に答える 1

0

Excel 2010 以降では、[データ] タブに移動し、SQL データベースへの接続を追加します。[テーブルの選択] ダイアログが表示されたら、有効なテーブルを選択します (後で変更できます)。次に、「テーブルのインポート」というダイアログが表示されます。ここから、このページの指示に従ってください。[プロパティ] をクリックし、[定義] タブをクリックします。Command Type を「Table」以外に変更し、Command Text を EXEC usp_PIVOT_Seats に変更すると、準備完了です。

于 2013-05-09T20:29:11.043 に答える