【发布时间】:2023-03-29 13:31:01
【问题描述】:
我有桌子:
CREATE TABLE IF NOT EXISTS `t2` (
`j` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL CHECK (json_valid(`j`))
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `t2` (`j`) VALUES
('{"sdsd": 123, "qqq": 456, "data": [{"www": 789, "eee": 98}, {"ddd": 578}]}');
并且需要将 json 值“www”更新为 +10。我尝试这样做:
UPDATE t2 set j = JSON_SET(j, "$.data[0].www", "$.data[0].www" +1) ;
但是得到一个错误:
SQL 错误 (1292):截断不正确的 DOUBLE 值:'$.data[0].www'
请帮忙,如何正确更新值?谢谢!
【问题讨论】:
标签: sql arrays json sql-update mariadb