在 MySQL 中搜尋編碼的 JSON 資料
您在 MySQL 中查詢 JSON 編碼的資料時遇到了困難。值得注意的是,當嘗試檢索等於「1」且值不同於「3」的鍵時,目前的 MySQL 查詢會傳回不一致的結果。
MySQL 版本 >= 5.7 的解決方案
如果您使用 MySQL 5.7 或更高版本,您可以利用 JSON_EXTRACT 函數在 JSON 資料中有效搜尋。此函數的語法為:
JSON_EXTRACT(JSON_DOCUMENT, JSON_PATH)
在您的特定情況下,要查詢鍵“1”且其值不包括“3”,您可以使用以下查詢:
SELECT JSON_EXTRACT(`attribs_json`, "$.feature.1.value") AS `value` FROM `products` WHERE JSON_EXTRACT(`attribs_json`, "$.feature.1.value") NOT LIKE "%3%"
如果與鍵“1”關聯的值不包含字串“3”,此查詢將傳回一筆記錄。
其他資源
有關MySQL 中JSON 搜尋功能的更全面概述,請參閱官方MySQL 參考手冊:
https://dev. mysql.com/doc/refman/ 5.7/en/json-search-functions.html
以上是如何在MySQL中高效搜尋編碼的JSON資料以排除特定值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!