【问题标题】:Access JSON key containing colon and hyphen访问包含冒号和连字符的 JSON 密钥
【发布时间】:2017-02-27 12:51:58
【问题描述】:

MySQL 表的格式如下:

CREATE TABLE bar...
   ...
   foo JSON
   ...

字段foo有这样的内容:

{"#:8": 0.90189, "#:34": 0.90239, "#:55": 0.90238, "#:144": 0.90219, "X:21-34": -1}

此命令失败:

SELECT foo FROM bar WHERE foo->'$.X:21-34' != 0;

错误 (4,1):无效的 JSON 路径表达式。错误就在身边 字符位置 9.

如何访问键名中有一些特殊字符但 JSON 字符串仍然有效的字段?

【问题讨论】:

标签: mysql json


【解决方案1】:

天哪。这非常简单而且合乎逻辑。这是解决方案:

SELECT foo FROM bar WHERE foo->'$."X:21-34"' != 0;

我必须在键名周围使用双引号。

【讨论】:

  • 好答案!非常感谢
猜你喜欢
  • 2015-09-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-28
  • 1970-01-01
  • 2022-08-18
  • 2023-02-12
相关资源
最近更新 更多