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)
Vorwort Auf dem Markt sind zahlreiche Open-Source...
Der Schlüssel ist, dass der lokale Server keine S...
HTTP-Header-Erklärung 1. Akzeptieren: Informiert d...
1. Zurück-Button Verwenden Sie history.back(), um...
Vorwort Als ich zuvor das Front-End studierte, be...
Bei DB-Benchmarktests sind QPS und TPS wichtige I...
01. Befehlsübersicht Der Befehl tr kann Zeichen a...
Inhaltsverzeichnis Jenkins-Installation Installie...
Vorwort Vergessene Passwörter sind ein Problem, d...
Sie möchten wissen, wie viele Tage es bis zu eine...
Downloadlink: Betriebsumgebung CentOS 7.6 in eine...
Ich habe viele Tutorials gelesen, aber festgestel...
In MySQL 8.0.18 wurde eine neue Hash-Join-Funktio...
Methode 1: Pycharm herunterladen und installieren...
Kürzlich erhielt ich eine Anforderung für eine Fun...