これらの例では、テーブルの定義は次のとおりです。
CREATE TABLE MyTable ( a INTEGER, b INTEGER, j JSON AUTO COLUMN);
これらの文は、テーブルにデータを挿入します。
INSERT INTO MyTable JSON '{"a":10,"b":1234,"extra":"1234"}';
INSERT INTO MyTable JSON '{"a":2345,"b":11,"extra":"2222"}';
このSELECT文は、MyTableのすべての列を最初の列で順序付けして返します。
SELECT * FROM MyTable ORDER BY 1;
a | b | j |
---|---|---|
10 | 1234 | Snippet:{"extra":"1234"} |
2345 | 11 | Snippet:{"extra":"2222"} |
この文には、列a、b、jのデータをJSON形式で返すAS JSONオプションが含まれます。
SELECT AS JSON a, b, j FROM MyTable;
出力は、"JSON"という名前の1つのJSON列です。
JSON |
---|
Snippet:{"a":2345,"b":11,"j":{"extra":"2222"}} |
Snippet:{"a":10,"b":1234,"j":{"extra":"1234"}} |
ORDER BYオプションを使用したSELECT AS JSONの場合、列を位置ではなく名前で指定する必要があります。
SELECT AS JSON a, b FROM MyTable ORDER BY a ASC;
JSON |
---|
Snippet:{"a":2345,"b":11,"j":{"extra":"2222"}} |
Snippet:{"a":10,"b":1234,"j":{"extra":"1234"}} |
TOP nオプションを使用したSELECT AS JSONの場合、ORDER BY列を位置ではなく名前で指定する必要があります。
SELECT AS JSON TOP 2 a, b FROM MyTable ORDER BY a DESC;
JSON |
---|
Snippet:{"a":2345,"b":11} |
Snippet:{"a":10,"b":1234} |