You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL中向cart表JSON字段追加值的查询语句修正求助

修正你的MySQL JSON字段追加语句

你的语句有几个关键问题导致无法正常生效,我帮你逐一修正并解释:

  1. 错误的语句类型:你用了SELECT语句,但要修改数据库中的数据,必须使用UPDATE语句
  2. 错误的字段引用:你使用了变量@items,但实际上应该直接操作表中的items字段
  3. JSON格式问题:追加的JSON对象没有用单引号包裹,MySQL要求字符串(包括JSON格式的字符串)必须用单引号界定

正确的更新语句

UPDATE cart 
SET items = JSON_ARRAY_APPEND(items, '$', '{"item_id": "5"}') 
WHERE id = 1;

额外优化建议

如果你的items字段初始值可能为NULL,可以用JSON_COALESCE先将其转为空数组,避免追加失败:

UPDATE cart 
SET items = JSON_ARRAY_APPEND(JSON_COALESCE(items, '[]'), '$', '{"item_id": "5"}') 
WHERE id = 1;

执行完更新后,你可以用下面的语句验证结果:

SELECT items FROM cart WHERE id = 1;

内容的提问来源于stack exchange,提问作者Marius

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.12 04:00:59