php - JSON_CONTAINS 无法从 MySQL 中找到

标签 php mysql json mysql-json

在 MySQL 中,我使用 PHP 的 json_encode 将数据存储在“jsonValues”字段中:

{"product_category":[[{"category":["28"]},{"product":["16","22","64"]}]]}

通过 PHP,我想通过编写以下查询来获取数据:

SELECT * FROM `dbTable` 
WHERE JSON_CONTAINS(jsonValues, '"category":["28"]');

但是,它显示错误:

3141 - Invalid JSON text in argument 2 to function json_contains: "The document root must not follow by other values." at position 10.

最佳答案

您是否尝试过像 mysql 文档那样在搜索词周围添加大括号?

SELECT * FROM `dbTable` WHERE JSON_CONTAINS(jsonValues, '{"category":["28"]}');

关于php - JSON_CONTAINS 无法从 MySQL 中找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51889252/

相关文章:

java - 使用 GSON 访问 JSON 元素

php - 如何使用包含多个 rowspan 和 colspan 的 PHPWord 在 word 中制作表格?

c# - 等同于 PHP 中的 C# Encoding.UTF8.GetBytes

java - Json_decode 返回 Null 和错误 4

php - PDO/MySQL : Underscore ('_' ) wildcard in PHP seems escaped by default

php - 如何在两个不同的表中同时插入值

javascript - 对不同的 JSON 对象数组进行哈希处理,每个人都会获得相同的哈希值

php - 未定义的方法 Laravel\Lumen\Application::booted()

php - 由于 PHP,带有数字的 MySQL LIKE 子句失败

python - Curl 到 Python 请求 - Json