1

データテーブル内のデータに基づいて.CSVファイルを生成します。私はこの質問が以前に尋ねられたことは知っていますが、私はセパレータが何であるべきかを指定する方法の例を見つけることができません。例えばSQL ServerからCSVファイルを生成するストアドプロシージャを作成する方法

私はテーブルと、このようなクエリを持っている場合、これは私が出力になりたいものです。

たMyTable:

Id - Int Key 
NickName- NvarChar 
REALName - NvarChar 
Number - NvarChar 
Updated - bit 

問合せ:

SELECT * 
FROM MyTable 
WHERE Updated = 1 

出力:

出力にフィールドセパレータとして|を使用します。したがって、CSVファイルの出力は次のようになります。

Id|NickName|REALName|Number|Updated 
1|NickNameHere|RealNameHere|0798548558|1 
2|NickNameHere2|RealNameHere2|079948558|1 

などとなります。

+1

あなたは、SQL Serverの3つの異なるバージョンを使用していますか? – Forklift

+1

BCPを使用してCSVファイルを作成します。 –

答えて

0

次のクエリは、 '|'でCSVデータを生成します。セパレーターTextFileのへの出力結果の保存

select 'Id|NickName|REALName|Number|Updated' 
union all 
select 
     cast (Id as nvarchar) + '|' 
     + NickName + '|' 
     + RealNameHere + '|' 
     + Number + '|' 
     + cast (Updated as nvarchar) 
    from MyTable 
    WHERE Updated = 1 

方法1:SSMS内から

SSMSのメニューから:クエリ - >結果に -

方法を提出する>結果を2:powershellを使用して:Invoke-SqlCmd

Invoke-SqlCmd -Query "your query" | Export-Csv "path\to\csvfile" 

方法3SqlCmdコマンドラインツール使用:

sqlcmd -q "your query" -o "path\to\csvfile" -S server -P password -d database 
+0

しかし、どのように出力/ CSVファイルを作成するには、確かにこれはちょうど選択です。 –

関連する問題