我得到了一个包含json字段的表。该字段的默认值为 "NULL"
-现在我想更新json数据的一个字段。
| ----------------- |
| [int] | [JSON] |
| xy | ipdata |
| ----------------- |
所以这个领域可能是这样的:
{ ip: "233.233.233.233", "data": "test", "name": "Peterson", "full_name": "Hanson Peterson" }
所以我想更新ip地址。
update table set ipdata = JSON_SET(ipdata, "$.ip", "newIp") where xy = 2;
但是如果字段为空会发生什么呢?上面的查询似乎并不只是用ip字段“创建”一个新的json。它什么都不做。
如何让mysql插入 {"ip": "newIp"}
如果字段为空,则只需更新 ip
json密钥?
1条答案
按热度按时间djmepvbi1#
你可以用
Case .. When
处理Null
. 当田地null
,您可以改为创建Json_object()
然后设定: