JSON-Daten in MySQL-Spalten abfragen
In MySQL können Sie JSON-Objekte in Spalten speichern, um komplexe Datenstrukturen zu speichern. Um diese JSON-Felder effizient abzufragen, kann es schwierig sein, sie in WHERE-Klauseln einzubinden. Hier ist eine Lösung:
Lösung mit json_extract
MySQL 5.7 und höher unterstützen die Funktion json_extract, mit der Sie bestimmte Werte aus JSON-Daten extrahieren können. Diese Funktion akzeptiert zwei Argumente: die JSON-Daten und einen JSON-Pfadausdruck.
Beispiel:
Angenommen, Sie haben eine „articles“-Tabelle mit einer „json_data“-Spalte das JSON-Objekte speichert. So finden Sie Artikel mit Titeln, die „CPU“ enthalten:
<code class="sql">SELECT user_id, json_data FROM articles WHERE json_extract(json_data, '$.title') LIKE '%CPU%';</code>
Diese Abfrage gibt Folgendes zurück:
+---------+--------------------------------------------------------------------------------------------------+ | user_id | json_data | +---------+--------------------------------------------------------------------------------------------------+ | 1 | {"url":"https://www.cpubenchmark.net/","title": "CPU Benchmarks"} | +---------+--------------------------------------------------------------------------------------------------+
Erklärung:
Durch die Einbindung von json_extract in Ihre Abfragen können Sie JSON-Daten in MySQL einfach durchsuchen und filtern, was es zu einem leistungsstarken Tool für die Arbeit mit komplexen Daten macht.
Das obige ist der detaillierte Inhalt vonWie frage ich in MySQL-Spalten gespeicherte JSON-Daten ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!