mysql 更新 json 属性和一个查询中的另一列
mysql update json attribute and another column in one query
我需要更新列中的 json 值以及更新同一查询中的另一列。
像这样:
UPDATE fixtures
SET jsonResults = '{}',
JSON_SET(jsonFixture, '$.time_status', '0')
WHERE intRefID = 88961323;
我怎样才能做到这一点?
JSON_SET()
returns一个JSON文档值,但是UPDATE语句需要一系列赋值表达式:
UPDATE fixtures
SET jsonResults = '{}',
jsonFixture = JSON_SET(jsonFixture, '$.time_status', '0')
WHERE intRefID = 88961323;
这会在 JSON_SET()
的结果中替换 jsonFixture
,然后在该文档中设置一个字段。
与这样的更新比较:
UPDATE mytable
SET i = i + 1
WHERE ...
它取 i
的值,加 1,然后用该加法表达式的结果替换 i
。
我需要更新列中的 json 值以及更新同一查询中的另一列。
像这样:
UPDATE fixtures
SET jsonResults = '{}',
JSON_SET(jsonFixture, '$.time_status', '0')
WHERE intRefID = 88961323;
我怎样才能做到这一点?
JSON_SET()
returns一个JSON文档值,但是UPDATE语句需要一系列赋值表达式:
UPDATE fixtures
SET jsonResults = '{}',
jsonFixture = JSON_SET(jsonFixture, '$.time_status', '0')
WHERE intRefID = 88961323;
这会在 JSON_SET()
的结果中替换 jsonFixture
,然后在该文档中设置一个字段。
与这样的更新比较:
UPDATE mytable
SET i = i + 1
WHERE ...
它取 i
的值,加 1,然后用该加法表达式的结果替换 i
。