示例data列具有{“默认帐户”:188,“默认部门-207”:948}
data
update user_preference set data = JSON_REMOVE(data,'$.default_bu-207') where JSON_EXTRACT(data,'$.default_bu-207') = 948
对于此查询,我收到错误无效的JSON路径表达式。错误位于字符位置16附近。*尝试转义-,但仍引发相同的错误
-
csbfibhn1#
https://dev.mysql.com/doc/refman/8.0/en/json.html表示:
...键的名称必须是双引号字符串或有效的ECMAScript标识符(请参见ECMAScript语言规范中的标识符名称和标识符)。由于密钥名称包含标点字符,因此必须使用双引号:
... JSON_REMOVE(data,'$."default_bu-207"') ...
1条答案
按热度按时间csbfibhn1#
https://dev.mysql.com/doc/refman/8.0/en/json.html表示:
JSON路径语法
...
键的名称必须是双引号字符串或有效的ECMAScript标识符(请参见ECMAScript语言规范中的标识符名称和标识符)。
由于密钥名称包含标点字符,因此必须使用双引号: