2016-04-29 1 views
0

このSELECTステートメントをExcelファイルにエクスポートする必要がありますが(私のデスクトップに言うことができます)、クエリ内で処理する必要がありますので、毎回新しいファイルを読み込みますそれは)スクリプトは最初から最後まで実行されます。 SSISはオプションではなく、標準エクスポートでもありません。以下のSELECT文を参照してください。クエリ内でExcelにSELECTステートメントをエクスポートする

SELECT 
    Sub_Company, 
    GL_Account, 
    CAST(SUM(Debits) AS DECIMAL(18,2)) AS Debits, 
    CAST(SUM(Credits) AS DECIMAL(18,2)) AS Credits, 
    CAST(SUM([P&L_Impact]) AS DECIMAL(18,2)) AS [P&L_Impact], 
    COUNT(*) AS Record_Count 
FROM 
(
    SELECT * 
    FROM [FL_SQL_Training].[dbo].[Combined_GL] 
    WHERE 
     Company = 'US' AND 
     GL_Source = 'Consolidation' 
) A 
WHERE 
    GL_Journal_Header_Description LIKE '%UK%' OR 
    GL_Journal_Header_Description LIKE '%CAD%' OR 
    GL_Journal_Header_Description LIKE '%MEX%' OR 
    GL_Journal_Header_Description LIKE '%Hon%' 
GROUP BY 
    Sub_Company, 
    GL_Account 

おかげで、

+0

利用可能な、Excelデータソースを作成し、値を挿入それは許されないのですか?あなたは実際にはクエリ内のものを行うことはできません。 –

+0

エクスポートウィザード、コピー/ペーストなどの機能SQL Serverにエクスポートコマンドはありませんか? OUTPUTを使用してSQLでExcelのドライバを呼び出す方法があると思いました。 –

答えて

0
SELECT 
    Sub_Company, 
    GL_Account, 
    CAST(SUM(Debits) AS DECIMAL(18,2)) AS Debits, 
    CAST(SUM(Credits) AS DECIMAL(18,2)) AS Credits, 
    CAST(SUM([P&L_Impact]) AS DECIMAL(18,2)) AS [P&L_Impact], 
    COUNT(*) AS Record_Count 
    INTO OUTFILE '/tmp/accounts.csv' 
    FIELDS TERMINATED BY ',' 
    ENCLOSED BY '"' 
    LINES TERMINATED BY '\n'; 
FROM 
(
    SELECT * 
    FROM [FL_SQL_Training].[dbo].[Combined_GL] 
    WHERE 
     Company = 'US' AND 
     GL_Source = 'Consolidation' 
) A 
WHERE 
    GL_Journal_Header_Description LIKE '%UK%' OR 
    GL_Journal_Header_Description LIKE '%CAD%' OR 
    GL_Journal_Header_Description LIKE '%MEX%' OR 
    GL_Journal_Header_Description LIKE '%Hon%' 
GROUP BY 
    Sub_Company, 
    GL_Account 
+0

"A"テーブルエイリアス行にエラーがあります。どこにこれを置くべきかわからない。 –

+0

エラーをコピー/貼り付けしてください。 –

0

insert into OPENROWSET('Microsoft.Jet.OLEDB.4.0', 
'Excel 8.0;Database=D:\testing.xls;', 
'SELECT * FROM [SheetName$]') select * from SQLServerTable 

詳しい情報はこちらを正確に "標準的な輸出" を構成するものhttp://www.sqlteam.com/forums/topic.asp?TOPIC_ID=49926

+0

これはもちろんSQL Server用です... –

+0

悲しいことに、エラーが発生します。プロバイダがシングルスレッドアパートメントモードで実行するように構成されているため、OLE DBプロバイダ 'Microsoft.Jet.OLEDB.4.0'は分散クエリに使用できません。 –

+0

セキュリティ上の理由からopenrowsetを有効にする必要があります。 sp_configure 'show advanced options'、1; RECONFIGURE; ; sp_configure 'アドホック分散クエリ'、1; RECONFIGURE; ; GO –

関連する問題