【问题标题】:Is there a way to use MySQL's JSON_EXTRACT with integer keys in JSON string?有没有办法将 MySQL 的 JSON_EXTRACT 与 JSON 字符串中的整数键一起使用?
【发布时间】:2018-07-06 05:09:13
【问题描述】:

是否可以将JSON_EXTRACT 与整数键一起使用?

我想从下面提取[273, 140],但是SQL不起作用...

SELECT json_extract('{"1": [273, 140], "2": [273.5, 198.5], "3": [209, 191]}', '$.1');

我正在尝试使用来自 https://dev.mysql.com/doc/refman/5.7/en/json-search-functions.html#operator_json-column-path 的语法

我得到错误:

ERROR 3143 (42000): Invalid JSON path expression. 
The error is around character position 3

【问题讨论】:

标签: mysql sql json


【解决方案1】:

如果键是数字,则应在键周围使用双引号。这有效:

select json_extract('{"1": [273, 140], "2": [273.5, 198.5], "3": [209, 191]}', '$."1"');

【讨论】:

  • 虽然此代码 sn-p 可以解决问题,但 including an explanation 有助于提高您的回复质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。
猜你喜欢
  • 2016-12-23
  • 1970-01-01
  • 2020-05-04
  • 2020-01-22
  • 1970-01-01
  • 2020-07-07
  • 1970-01-01
  • 1970-01-01
  • 2018-03-15
相关资源
最近更新 更多