Heim >Datenbank >MySQL-Tutorial >Wie frage ich MySQL-Spalten mit JSON-Daten mithilfe von JSON-Funktionen ab?
Abfragen von MySQL-Spalten mit JSON-Daten mithilfe von JSON-Funktionen
In MySQL können Sie JSON-Objekte als Werte in Datenbankspalten speichern. Um Daten aus diesen Spalten mithilfe bestimmter JSON-Felder in Ihren Abfragen effizient abzurufen, sollten Sie die Verwendung von JSON-Funktionen wie json_extract() in Betracht ziehen.
Verwendung von json_extract() für die Abfragefilterung
Betrachten wir zum Beispiel die folgende Tabelle mit dem Namen „Artikel“, die eine Spalte mit dem Namen „json_data“ mit JSON-Objekten enthält:
Column | Data |
---|---|
id | 1, 2, 3 |
user_id | 1, 1, 2 |
json_data | '{"url":"https://www.cpubenchmark.net/","title": "CPU Benchmarks"}', '{"url":"http://www.ebay.com/sch/CPUs-Processors-/164/i.html","title": "Computer and Processors"}', '{"url":"https://www.youtube.com/watch?v=tntOCGkgt98","title": "Funny Cats Compilation"}' |
Um Datensätze basierend auf einem bestimmten JSON-Feld zu filtern, können Sie die Funktion json_extract() verwenden. Um beispielsweise Artikel abzurufen, die den Begriff „CPU“ im Titelfeld der JSON-Objekte enthalten:
SELECT user_id, json_data FROM articles WHERE json_extract(json_data, '$.title') LIKE '%CPU%';
Diese Abfrage gibt die erste Zeile zurück, da sie den Kriterien entspricht.
Zusätzliche Hinweise
Das obige ist der detaillierte Inhalt vonWie frage ich MySQL-Spalten mit JSON-Daten mithilfe von JSON-Funktionen ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!