概要
コマンドラインツールはデフォルトだとSELECTの結果は「|」で区切られて表示される。 これは 「.mode」 コマンドの「list」と同じ設定。
「.separator」コマンドは列を区切る文字と行を区切る文字を変更出来る。 SELECTの結果を「.mode」で用意されていないフォーマットで出力したい場合や 「.import」コマンドで取り込む際に利用する。
ヘルプの内容
sqlite> .help .separator
.separator COL ?ROW? Change the column and row separators
実行例
環境
- Windows 10 64bit
- SQLite3 (3.40.1) Command-Line Shell
列の区切り文字を「:」に変更してみる
sqlite> select * from sample;
1|honda|honda@example.com
2|suzuki|suzuki@example.com
sqlite> .separator :
sqlite> select * from sample;
1:honda:honda@example.com
2:suzuki:suzuki@example.com
列の区切り文字を「\n(改行コード)」に、 行の区切り文字を「\n\n(改行二つ)」にしてみる
sqlite> select * from sample;
1|honda|honda@example.com
2|suzuki|suzuki@example.com
sqlite> .separator \n \n\n
sqlite> select * from sample;
1
honda
honda@example.com
2
suzuki
suzuki@example.com
sqlite>
これで独自のフォーマットのデータを出力したり これを応用してTSV(タブ区切り)ファイルを入出力したりすることができる。
もし「.mode」で準備されているモードがあればそちらを使ったほうがいい。
参考URL
-
Command Line Shell For SQLite
公式のコマンドラインツールに関するドキュメント
https://www.sqlite.org/cli.html -
Changing Output formats
公式の出力フォーマットに関するドキュメント
https://www.sqlite.org/cli.html#changing_output_formats