Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从MySQL json列中删除空键_Mysql_Json - Fatal编程技术网

如何从MySQL json列中删除空键

如何从MySQL json列中删除空键,mysql,json,Mysql,Json,我有一个带有json字段的简单MySQL表。出于某种原因,json字段包含一个空键,我需要删除它 我所拥有的: id name info 1 scott {"": "", "key": "value"} 2 joe {"": "", "key2": "value2"} 3 ed {"": "", "key3": "value3"} 这是有效的,但仅适用于值为空的情况。然而,这是行不通的 update t1 set info = JSON_REMOVE(i

我有一个带有json字段的简单MySQL表。出于某种原因,json字段包含一个空键,我需要删除它

我所拥有的:

id name info 1 scott {"": "", "key": "value"} 2 joe {"": "", "key2": "value2"} 3 ed {"": "", "key3": "value3"} 这是有效的,但仅适用于值为空的情况。然而,这是行不通的

update t1 set info = JSON_REMOVE(info, '$.""');
示例数据使用以下选项:

更新
`t1`
设置
`信息`=
JSON\u合并\u补丁(
JSON_对象(),
JSON_集(
替换(
`信息“,”:“,”空“:”
),
“$.null”,
无效的
)
);

请参阅。

这将教会您首先在所有JSON上放置有效属性。您使用的是MySQL 5.7吗@StackSlave-对吗?谁会想到mysql不会检查有效的json。json标准允许空字符串作为键tho?
update t1 set info = REPLACE(info, '"": "",', ''); 
update t1 set info = JSON_REMOVE(info, '$.""');