2023年9月24日日曜日

SQLite3 行(ROW)を繋げてJSONオブジェクトを作成する (json_group_object())

概要

SQL結果の行(row)を繋げてJSONオブジェクトを作成するには json_group_objectを使用する。

SQL結果の列(column)を繋げてJSONを作成するには json_arrayjson_objectを使用する。

構文


json_group_object(name, value)
                
name
連想配列のキー
value
連想配列の値

環境

  • Windows 10 64bit
  • SQLite3 (3.43.1) Command-Line Shell

実行例

sample
name quantity
tomato 100
potato 120
pumpkin 50

sqlite> .mode box
sqlite> select json_group_object('name', name) from test;
┌────────────────────────────────────────────────────┐
│          json_group_object('name', name)           │
├────────────────────────────────────────────────────┤
│ {"name":"tomato","name":"potato","name":"pumpkin"} │
└────────────────────────────────────────────────────┘
sqlite> select json_group_object(name, quantity) from test;
┌──────────────────────────────────────────┐
│    json_group_object(name, quantity)     │
├──────────────────────────────────────────┤
│ {"tomato":100,"potato":120,"pumpkin":50} │
└──────────────────────────────────────────┘

                

参考URL