我有一個包含 2 個欄位的表 t:一個包含一個 id,另一個包含一個 json。
我的表如下所示:
| id | json |
|:---|:----------------------------------------------|
| 1 | {"tag1":45, "tag2": 3, "tag5": 10} |
| 2 | {"tag5":35, "tag6": 7, "tag8": 10, "tag10": 4}|
| 3 | {"tag2":10, "tag800": 6} |
我正在嘗試撰寫一個 postgresql 查詢來創建一個如下所示的表,但我被卡住了:
| id | key | Value |
|:---|:--------|:------|
| 1 | tag1 | 45 |
| 1 | tag2 | 3 |
| 1 | tag5 | 10 |
| 2 | tag5 | 35 |
| 2 | tag6 | 7 |
| 2 | tag8 | 10 |
| 2 | tag10 | 4 |
| 3 | tag2 | 10 |
| 3 | tag800 | 6 |
請注意,我的資料中有數千個不同的鍵。
任何幫助將非常感激。謝謝!
uj5u.com熱心網友回復:
重新創建你的例子
CREATE TABLE test(id int, mydata jsonb);
insert into test values (1, '{"tag1":45, "tag2": 3, "tag5": 10}');
insert into test values (2, '{"tag5":35, "tag6": 7, "tag8": 10, "tag10": 4}');
insert into test values (3, '{"tag2":10, "tag800": 6} ');
jsonb_each您可以使用該功能實作您正在尋找的東西
select id, key, value from test, jsonb_each(test.mydata)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/427598.html
標籤:json PostgreSQL
上一篇:如何加入兩個結果
下一篇:計算單條記錄的行數
