デフォルトでは、SQLiteコマンドラインインターフェイスは、列ヘッダーなしでパイプで区切られたリストを使用してクエリ結果を表示します。
これは、列名を必要としないアプリケーションで結果を使用している場合は問題ないかもしれませんが、人間だけの場合、特に列が多い場合は、データの読み取りが困難になる可能性があります。
幸い、クエリ結果に列名を表示する簡単な方法があります。
実際、これを行うには少なくとも2つの方法があり、この記事で説明します。
.headersコマンド
クエリ結果に列ヘッダーを表示する最もわかりやすい方法は、.headers
を使用することです。 指図。これは1つのパラメーターを受け入れ、そのパラメーターの値はon
のいずれかである必要があります またはoff
。
とてもシンプルです。したがって、列ヘッダーを有効にするには、.headers on
を使用するだけです。 。
これを行ってからクエリを実行する例を次に示します。
.headers on
SELECT * FROM Products;
結果:
ProductId|ProductName|Price 1|Blue Widgets (6 Pack)|389.45 2|Widget Holder|139.5 3|Widget Opener|89.27 4|Foobar Set|120.0
前述のように、.headers off
を使用して列ヘッダーを無効にできます 。
これは同じクエリですが、列ヘッダーが無効になっています:
.headers off
SELECT * FROM Products;
結果:
1|Blue Widgets (6 Pack)|389.45 2|Widget Holder|139.5 3|Widget Opener|89.27 4|Foobar Set|120.0
結果を列に表示する場合は、SQLiteの結果を列に表示する方法を参照してください。
ラインモード
SQLiteコマンドラインシェルでは、「ライン」モードを使用することもできます。これを行うと、クエリ結果が垂直に表示されるため、各列が新しい行にリストされます。このモードを使用すると、列名も column_name =valueの形式で表示されます。 。
次に例を示します:
.headers off
.mode line
SELECT * FROM Products;
結果:
ProductId = 1 ProductName = Blue Widgets (6 Pack) Price = 389.45 ProductId = 2 ProductName = Widget Holder Price = 139.5 ProductId = 3 ProductName = Widget Opener Price = 89.27 ProductId = 4 ProductName = Foobar Set Price = 120.0
列ヘッダーを明示的に無効にしましたが、.mode line
を使用して出力されていることに注意してください。 とにかく列ヘッダーを表示します。おそらくそれほど悪いことではありません。列名が表示されなかった場合に、各行がどの列を表しているかを解読するのがどれほど難しいか想像してみてください。