Suche nach codierten JSON-Daten in MySQL
Sie sind auf Schwierigkeiten beim Abfragen von JSON-codierten Daten in MySQL gestoßen. Insbesondere liefert Ihre aktuelle MySQL-Abfrage inkonsistente Ergebnisse, wenn versucht wird, Schlüssel gleich „1“ mit Werten abzurufen, die sich von „3“ unterscheiden.
Lösung für MySQL-Versionen >= 5.7
Wenn Sie MySQL Version 5.7 oder höher verwenden, können Sie die JSON_EXTRACT-Funktion nutzen, um effektiv in JSON-Daten zu suchen. Die Syntax für diese Funktion lautet:
JSON_EXTRACT(JSON_DOCUMENT, JSON_PATH)
In Ihrem speziellen Fall können Sie zur Abfrage des Schlüssels „1“ mit einem Wert, der „3“ ausschließt, die folgende Abfrage verwenden:
SELECT JSON_EXTRACT(`attribs_json`, "$.feature.1.value") AS `value` FROM `products` WHERE JSON_EXTRACT(`attribs_json`, "$.feature.1.value") NOT LIKE "%3%"
Diese Abfrage gibt einen Datensatz zurück, wenn der mit Schlüssel „1“ verknüpfte Wert nicht die Zeichenfolge „3“ enthält.
Zusätzlich Ressourcen
Eine umfassendere Übersicht über JSON-Suchfunktionen in MySQL finden Sie im offiziellen MySQL-Referenzhandbuch:
https://dev.mysql.com/doc/refman/ 5.7/en/json-search-functions.html
Das obige ist der detaillierte Inhalt vonWie kann ich codierte JSON-Daten in MySQL effizient durchsuchen, um bestimmte Werte auszuschließen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!