如何在我的 JSON 型別的 sql 列中添加另一個資料。
在我的表中,我有一列 json 型別為 null。
所以我使用這個命令來更新值。
update myTable
set columnJson = '[{"id" : "someId1" , "name": "someNamme2"}
,{"id" : "someId2", "name": "someNamme2"}]'
where id = "rowID1";
這作業正常。我有兩個資料。
現在我想在 That 中再添加一個資料。
我正在使用相同的命令
update myTable
set columnJson = '[{"id" : "someId3", "name": "someNamme3"}]'
where id = "rowID1";
但之前的價值正在被沖走。無論如何我可以添加n個值。我正在用 Java 做這個。
uj5u.com熱心網友回復:
您需要 JSON 函式,例如JSON_ARRAY_APPEND查看更多函式來操作。
Json 需要一些特殊的功能需要學習,我們通常推薦 nit 使用 JSON,因為在一個規范化的表中你可以使用所有存在的 sql 功能,
JSON 始終需要適度的學習努力
update myTable
set columnJson = '[{"id" : "someId1" , "name": "someNamme2"}
,{"id" : "someId2", "name": "someNamme2"}]'
where id = "rowID1";
Rows matched: 1 Changed: 1 Warnings: 0
update myTable
set columnJson = JSON_ARRAY_APPEND(columnJson, '$[0]', '{"id" : "someId3", "name": "someNamme3"}')
Rows matched: 1 Changed: 1 Warnings: 0
SELECT * FROM myTable
| ID | 列Json |
|---|---|
| 行 ID1 | [[{“id”:“someId1”,“name”:“someNamme2”},“{”id”:“someId3”,“name”:“someNamme3”}”],{“id”:“someId2”, “名稱”:“someName2”}] |
小提琴
如果你想要另一個位置,你改變它應該改變的點
update myTable
set columnJson = '[{"id" : "someId1" , "name": "someNamme2"}
,{"id" : "someId2", "name": "someNamme2"}]'
where id = "rowID1";
Rows matched: 1 Changed: 1 Warnings: 0
update myTable
set columnJson = JSON_ARRAY_APPEND(columnJson, '$[1]', '{"id" : "someId3", "name": "someNamme3"}')
Rows matched: 1 Changed: 1 Warnings: 0
SELECT * FROM myTable
| ID | 列Json |
|---|---|
| 行 ID1 | [{“id”:“someId1”,“name”:“someNamme2”},[{“id”:“someId2”,“name”:“someNamme2”},“{”id”:“someId3”,“name ": "someName3"}"]] |
小提琴
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/513437.html
上一篇:無法與主機mailhog建立連接:stream_socket_client():無法連接到null://mailhog:1025
