SQLite | SQLiteコマンド | SELECT結果の区切り文字を変更する(.separatorコマンド)
.separatorコマンドを実行すると、SELECT文の結果を表示するときに使う既定の区切り文字を変更できます。ここでは、その使い方を説明します。
.separatorコマンドの使い方
区切り文字は、クエリ結果の値を区切るほか、.importコマンドでファイルを読み込むときのフィールド区切りにも使われます。
.separator COL? ROW?
第1引数にはカラムの区切り文字を指定します。省略可能な第2引数には行の区切り文字を指定します。カラム区切りの初期値は|で、1文字だけでなく文字列も指定できます。現在の設定は.showで確認できます。
sqlite> .show
echo: off
eqp: off
explain: auto
headers: off
mode: list
nullvalue: ""
output: stdout
colseparator: "|"
rowseparator: "\n"
stats: off
width:
filename: mydb.sqlite3
初期設定では、値が|で区切られます。
sqlite> select * from user;
1|devkuma|Seoul
2|kimkc|Busan
3|araikuma|Seoul
4|happykuma|Seoul
5|mykuma|Daejeon
区切り文字をカンマに変更して、同じクエリを実行します。
sqlite> .separator ,
sqlite> select * from user;
1,devkuma,Seoul
2,kimkc,Busan
3,araikuma,Seoul
4,happykuma,Seoul
5,mykuma,Daejeon
複数の文字からなる文字列も指定できます。
sqlite> .separator /-/
sqlite> select * from user;
1/-/devkuma/-/Seoul
2/-/kimkc/-/Busan
3/-/araikuma/-/Seoul
4/-/happykuma/-/Seoul
5/-/mykuma/-/Daejeon
空白を含む場合は、文字列全体を二重引用符で囲みます。
sqlite> .separator ", "
sqlite> select * from user;
1, devkuma, Seoul
2, kimkc, Busan
3, araikuma, Seoul
4, happykuma, Seoul
5, mykuma, Daejeon