嗨,我有一个表“状态”与2列id
和string
。 我插入一个数据,例如id = 1
和string = {"1": "Enable", "2": " Disabled"}
。无法提取查询中的JSON路径
我该如何才能在SQL中获得值“Enable”?
If I type SELECT
id, string->"$.1"
FROM status;
我有无效的JSON路径表达式。
嗨,我有一个表“状态”与2列id
和string
。 我插入一个数据,例如id = 1
和string = {"1": "Enable", "2": " Disabled"}
。无法提取查询中的JSON路径
我该如何才能在SQL中获得值“Enable”?
If I type SELECT
id, string->"$.1"
FROM status;
我有无效的JSON路径表达式。
您需要将1
用引号括起来,以便将其视为字符串而不是数字。
这些无论是应为你工作:
SELECT id, string->"$.\"1\""
FROM status
或:
SELECT id, string->'$."1"'
FROM status
有一个称为json_extract()
的功能。 以下查询应该把工作做好:
SELECT
id,
json_extract(string,'$.1')
FROM status;
编辑:该解决方案将只限于MySQL 5.7或更高版本。
希望它有帮助!
它不工作。就像@Ike Walker说的,我需要用引号将1包裹起来。 – Gnast973
对不起。忘记检查与您的Mysql版本。 –
它的工作原理!谢谢! – Gnast973