Vorwort JSON ist ein leichtes Datenaustauschformat, das ein sprachunabhängiges Textformat verwendet, das XML ähnelt, aber einfacher als XML sowie leichter zu lesen und zu schreiben ist. Es lässt sich für Maschinen einfacher analysieren und generieren und reduziert die Netzwerkbandbreite bei der Übertragung. Das Format von JSON ist sehr einfach: Name/Schlüssel-Wert. In früheren MySQL-Versionen wurde zur Implementierung eines solchen Speichers entweder VARCHAR oder TEXT großer Text verwendet. Nach der Veröffentlichung von MySQL 5.7 wurden der JSON-Datentyp sowie das Abrufen und andere Funktionsparsing dieses Typs speziell entwickelt. Lassen Sie es uns in die Praxis umsetzen. Erstellen einer Tabelle mit einem JSON-Feld Beispielsweise enthält eine Tabelle „Artikel“ folgende Felder: ID, Titel, Tags Ein Artikel kann mehrere Tags haben und Tags können auf den JSON-Typ gesetzt werden Die Anweisung zur Tabellenerstellung lautet wie folgt: CREATE TABLE Artikel` ( id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, Titel` varchar (200) NICHT NULL, Tags` json DEFAULT NULL , PRIMÄRSCHLÜSSEL (`id`) )ENGINE=InnoDB; Einfügen von Daten Um Daten mit JSON-Inhalt einzufügen, führen Sie die Insert-Anweisung aus: INSERT INTO Artikel` (`Titel`, `Tags`) WERTE ( „Mysql JSON erleben“, '["Mysql", "Datenbank"]' ); Was hier eingefügt wird, ist ein JOSN-Array ["Mysql", "Database"] Fragen Sie den gesamten Inhalt der Artikeltabelle ab und Sie können die neu eingefügten Daten sehen. Abfrage Verwenden von JSON-Funktionen zum Ausführen zweier einfacher Abfragen 1. Alle Artikel mit dem Tag "MySQL" finden SELECT * FROM Artikel` WO JSON_CONTAINS(Tags, '["Mysql"]'); 2. Artikel mit Tags finden, die mit „Daten“ beginnen SELECT * FROM Artikel` WO JSON_SEARCH(Tags, „eins“, „Data%“) NICHT NULL IST; Die Bedeutung der drei Parameter in der JSON_SEARCH-Funktion: 1. Zu findende Dokumente 2. Für den Suchbereich gibt es zwei Optionen: „eins“, um den ersten zu finden, der die Bedingungen erfüllt, und „alle“, um alle zu finden, die die Bedingungen erfüllen. 3. Suchbedingungen JSON-Pfad Der JSON-Pfad wird verwendet, um das Zielfeld im Dokument zu lokalisieren, zum Beispiel: WÄHLEN SIE JSON_EXTRACT( '{"id": 1, "name": "mysql"}', '$.name' ); Das Ergebnis ist:mysql JSON_EXTRACT() ist eine JSON-Extraktionsfunktion. $.name ist ein JSON-Pfad, d. h. das Namensfeld des gefundenen Dokuments. Der JSON-Pfad beginnt mit $. Sehen wir uns einige weitere Beispiele an. { "Zahl" : 123, "arr" : [1, 2], "Objekt" : { "ein" : 3, "b" : 4 } } $.num //Ergebnis: 123 $.arr //Ergebnis: [1, 2] $.arr[1] //Ergebnis: 1 $.obj.a //Ergebnis: 3 $**.b //Ergebnis: 4 Abfragebeispiel mit JSON-Pfad WÄHLEN tags-> "$[0]" als 'Tag' VON Artikel`; Daten aktualisieren Möchte man beispielsweise einem Artikel ein „dev“-Tag hinzufügen, so ist als Update-Voraussetzung, dass dieser bereits das „MySQL“-Tag enthält und noch keine Daten mit dem „dev“-Tag vorhanden sind. Die Update-Anweisung lautet wie folgt: Artikel aktualisieren` SET-Tags = JSON_MERGE(Tags, '["dev"]') WO JSON_SEARCH(Tags, 'eins', 'dev') IST NULL UND JSON_SEARCH(Tags, „eins“, „Mysql“) ist nicht NULL; Sie können sehen, dass das Tag „dev“ erfolgreich hinzugefügt wurde Wenn Sie beispielsweise das Tag „Mysql“ auf „Mysql 5.7.13“ aktualisieren möchten, lautet die Update-Anweisung wie folgt: Wir haben oben JSON_MERGE und JSON_SET kennengelernt. Es gibt viele andere Funktionen zum Ändern von JSON, wie zum Beispiel: Einfügen von Daten Ersetzen von Daten Daten an das Ende eines Arrays anhängen Daten vom angegebenen Speicherort entfernen Aufgrund meiner anfänglichen Erfahrungen mit der Bedienung habe ich den Eindruck, dass die JSON-Bedienung von MySQL relativ reibungslos verläuft. Es ist wirklich praktisch, die Dokumentstruktur in MySQL in Zukunft zu verwenden. Das könnte Sie auch interessieren:
|
<<: Beispiel für eine automatische Importmethode für allgemeine Vue3.0-Komponenten
>>: Lösung für den Fehler bei der Installation von Docker auf der CentOS-Version
Früher hatte fast jede Website eine Sitemap-Seite...
Überblick In Zabbix Version 5.0 und höher wurde e...
In HTML haben <, >, & usw. eine speziell...
Vorwort Vor vielen Jahren war ich ein Neuling auf...
<br />Als sich das Denken in Ost und West sp...
Detaillierte Erklärung des Linux-Befehls vi Der v...
Grafisches Tutorial zur Installation und Konfigur...
Verwenden Sie JS, um objektorientierte Methoden z...
HTML steht für Hypertext Markup Language. Heutzut...
Inhaltsverzeichnis Date-Objekt Erstellen eines Da...
Unter den Anweisungen meines Vorgesetzten übernah...
<br />Manchmal werden Ihnen möglicherweise F...
Designer verfügen über eine eigene Schriftartenbi...
Der erste Schritt besteht darin, die Versionsnumm...
(Wenn eine Webseite geladen wird, gibt es manchma...