Vorwort: Nach einem langen Test wird das gesamte System auf https://dev.mysql.com/doc/ref... 1. Kurzübersicht 2. JSON-Grundwerkzeuge//Verwenden Sie die Methode JSON_ARRAY, um ein JSON-Array zu definieren; WÄHLEN SIE JSON_ARRAY(1, "abc", NULL, TRUE, CURTIME()) //Ergebnis: [1, "abc", null, true, "11:30:24.000000"] //Die JSON_OBJECT-Methode definiert das JSON-Objekt SELECT JSON_OBJECT('id', 87, 'name', 'carrot') //Ergebnis {"id": 87, "name": "carrot"} //Array- und Objektverschachtelungsszenarien; [99, {"id": "HK500", "Kosten": 75,99}, ["heiß", "kalt"]] {"k1": "Wert", "k2": [10, 20]} //Datum/Uhrzeit-Typdefinition ["12:18:29.000000", "2015-07-29", "2015-07-29 12:18:29.000000"] //JSON_QUOTE maskiert das JSON-Objekt in einen String, d. h., es maskiert die internen Symbole und setzt das gesamte Objekt in doppelte Anführungszeichen. JSON_QUOTE(' "null" ') //Ergebnis "\"null\"" //JSON-Inhalt verschönern und ausgeben; JSON_PRETTY() //Sie können JSON/Elemente innerhalb von JSON in andere Datentypen konvertieren; //Konvertieren Sie das ID-Element im JSON-Jdoc wie folgt in ein vorzeichenloses Int: [https://dev.mysql.com/doc/refman/8.0/en/json.html#json-converting-between-types] (https://dev.mysql.com/doc/refman/8.0/en/json.html#json-converting-between-types) ORDER BY CAST(JSON_EXTRACT(jdoc, '$.id') AS UNSIGNED); Die -> -->-Operator, findet den Wert entsprechend dem Schlüssel; der Unterschied besteht darin, dass --> die " und Escape-Zeichen entfernt; die entsprechende // {"mascot": "Unser Maskottchen ist ein Delphin namens \"Sakila\"."} mysql> SELECT col->"$.mascot" FROM qtest; // Ergebnis: | „Unser Maskottchen ist ein Delphin namens \"Sakila\".“ | Wählen Sie Satz->>"$.mascot" aus Fakten; // Ergebnis: | Unser Maskottchen ist ein Delphin namens „Sakila“. | 3. JSON-Pfadausdruck Der Inhalt zwischen den oben stehenden Anführungszeichen --> ist der sogenannte Nehmen Sie das folgende JSON als Beispiel: [3, {"a": [5, 6], "b": 10}, [99, 100]] $[0] = 3 ; $[1] = {"a": [5, 6], "b": 10}; $[2] = [99, 100]; Gleichzeitig sind $[1], $[2] keine Skalare, weiter $[1].a = [5,6] $[1].a[1] = 6 $[1].b = 10; $[2][0] = 99; Weitere unterstützte Syntaxfunktionen $[n bis m] $[ 1 bis 2] = [{"a": [5, 6], "b": 10}, [99, 100]] $[letzte-2 bis letzte-1] = [3, {"a": [5, 6], "b": 10}] Um es zusammenzufassen:
4. JSON suchen und ändern//Wie oben sollte es möglich sein, stattdessen die Syntax --> zu verwenden; mysql> AUSWÄHLEN JSON_EXTRACT('{"a": 1, "b": 2, "c": [3, 4, 5]}', '$.*'); //[1, 2, [3, 4, 5]] WÄHLEN SIE JSON_EXTRACT('{"a": 1, "b": 2, "c": [3, 4, 5]}', '$.c[*]') //[3, 4, 5] WÄHLEN SIE JSON_EXTRACT('{"a": {"b": 1}, "c": {"b": 2}}', '$**.b'); //[1, 2] SELECT JSON_EXTRACT('[1, 2, 3, 4, 5]', '$[1 bis 3]'); //[2, 3, 4] //JSON_SET JSON_INSERT JSON_REPLACE JSON_REMOVE SET @j = '["a", {"b": [wahr, falsch]}, [10, 20]]'; WÄHLEN SIE JSON_SET(@j, '$[1].b[0]', 1, '$[2][2]', 2); //| ["a", {"b": [1, falsch]}, [10, 20, 2]] WÄHLEN SIE JSON_INSERT(@j, '$[1].b[0]', 1, '$[2][2]', 2); //["a", {"b": [wahr, falsch]}, [10, 20, 2]] JSON_REPLACE(@j, '$[1].b[0]', 1, '$[2][2]', 2) //["a", {"b": [1, falsch]}, [10, 20]] WÄHLEN SIE JSON_REMOVE(@j, '$[2]', '$[1].b[1]', '$[1].b[1]'); //["a", {"b": [wahr]}] Ein häufiges Szenario WÄHLEN SIE * AUS JSON_TABLE( '[{"a":"3"},{"a":2},{"b":1},{"a":0},{"a":[1,2]}]', -> "$[*]" -> SPALTEN( -> rowid FÜR ORDINALITÄT, -> ac VARCHAR(100) PATH "$.a" STANDARD '111' BEI LEER STANDARD '999' BEI FEHLER, -> aj JSON PATH "$.a" STANDARD '{"x": 333}' BEI LEER, -> bx INT EXISTS PATH "$.b" -> ) -> ) AS tt;
Ich glaube im Moment nicht, dass es sich lohnt. Ich glaube nicht, dass es sich im Moment lohnt. Sie können die Aggregatfunktion verwenden, indem Sie den Rückgabewert in einen anderen Typ konvertieren. Dies ist das Ende dieses Artikels darüber, wie MySQL 8.0 JSON ausführen kann. Weitere relevante Inhalte zum Ausführen von MySQL 8.0-JSON finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: So legen Sie eine horizontale Navigationsstruktur in HTML fest
>>: ElementUI-Komponente el-dropdown (Falle)
In diesem Artikelbeispiel wird der spezifische JS...
1. Übergeordnetes Div definiert Pseudoklassen: af...
1. Zabbix-Backup [root@iZ2zeapnvuohe8p14289u6Z /]...
1 Überprüfen Sie die Linux-Distributionsversion [...
Inhaltsverzeichnis 1. Installieren und importiere...
In diesem Artikelbeispiel wird der spezifische Co...
Beim Erstellen einer Webseite verwenden Sie manchm...
Freunde, die über Grundkenntnisse in SQL verfügen...
Inhaltsverzeichnis Initialisierung initState() in...
1. Ziehen Sie das Bild Docker-Pull-Registrierung....
Was ist nGrinder? nGrinder ist eine Plattform für...
Auf immer mehr Websites wird HTML4 durch XHTML ers...
1. Befehl zum Löschen von Dateien: Suche das ents...
In diesem Artikel wird der spezifische Code für J...
Element UI implementiert mehrere Tabellen, die gl...