php - MySQL JSON 数据类型更新与删除

标签 php mysql json

我正在使用 MySQL 5.7 和 JSON 数据类型以及 PHP。

首先我更新我的数据。

UPDATE car SET attributes = JSON_SET(`attributes`'$.A','Audi','$.B','BMW','$.C','Cadillac')

结果是这样的,这是正确的。

{
"A": "Audi",
"B": "BMW",
"C": "Cadillac"
}

然后我尝试用“”更新“B”。然后我的数据看起来像这样。

{
"A": "Audi",
"B": "",
"C": "Cadillac"
}

但我希望它看起来像这样。 (如果“B”为空,我想删除它)。

{
"A": "Audi",
"C": "Cadillac"
}

我该如何正确地做到这一点?

最佳答案

简单:

UPDATE `car` SET `attributes` = JSON_REMOVE(`attributes`, '$.B');

关于php - MySQL JSON 数据类型更新与删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50095353/

相关文章:

php - 使用 PHP 针对 Schematron 验证 XML

php - 使用模数除以零误差

json - 使用 T-SQL 将 JSON 转换为表

python - 在外部文件中存储字典、正则表达式和变量的最佳方式?

javascript - 日期出来了,但不是以预期的方式

php - 将多行插入 mysql 数据库

php - 使用 OpenSSL 编译 PHP 7.2

php - PHP/HTML:向mysql插入数据错误,请看看

mysql - 在 MySQL 中选择自定义列

php - 将变量从 href 传递到另一个 php 页面