„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie extrahiere ich JSON-Daten mithilfe von Abfragen aus MySQL-Spalten?

Wie extrahiere ich JSON-Daten mithilfe von Abfragen aus MySQL-Spalten?

Veröffentlicht am 08.11.2024
Durchsuche:775

How do I Extract JSON Data from MySQL Columns Using Queries?

Extrahieren von JSON-Daten in MySQL mit Abfragen

JSON ist ein beliebtes Datenformat zum Speichern strukturierter Daten und es wird immer häufiger, JSON-Objekte in Datenbankspalten zu speichern. MySQL bietet mehrere Methoden zum Extrahieren von Daten aus JSON-Spalten, wodurch es einfacher wird, Daten basierend auf bestimmten Feldern abzufragen und zu filtern.

Verwenden von json_extract() (MySQL 5.7 und höher)

Für MySQL-Versionen 5.7 und höher bietet die Funktion json_extract() eine praktische Möglichkeit, bestimmte Werte aus JSON-Objekten zu extrahieren. Hier ist ein Beispiel:

SELECT user_id, json_data
FROM articles
WHERE json_extract(json_data, '$.title') LIKE '%CPU%';

Diese Abfrage ruft Zeilen ab, in denen das Feld "title" in der JSON-Spalte mit dem Muster übereinstimmt. "%CPU%". Es würde nur die erste Zeile aus der bereitgestellten Beispieltabelle zurückgegeben.

Verwendung von json_unquote() und json_contains() (MySQL 8.0 und höher)

In MySQL 8.0 und höher , kann die Funktion json_unquote() verwendet werden, um doppelte Anführungszeichen aus JSON-Werten zu entfernen, und die Funktion json_contains() kann verwendet werden, um zu überprüfen, ob a In einem JSON-Objekt ist ein bestimmter Wert vorhanden. Hier ist eine alternative Abfrage:

SELECT user_id, json_data
FROM articles
WHERE json_unquote(json_value(json_data, '$.title')) LIKE '%CPU%';
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3