Gegevens extraheren uit JSON-type in MySQL

Gegevens Extraheren Uit Json Type In Mysql



Met MySQL kunt u de gegevens uit het JSON-type extraheren met behulp van verschillende opties. MySQL ondersteunt het werken met JSON-gegevenstypen. Als u weet hoe u dat moet doen, kunt u de gegevens snel uit de JSON-objecten halen en eruit halen.

Het bericht van vandaag begeleidt u bij het op verschillende manieren extraheren van de gegevens uit het JSON-type in MySQL. We bespreken de algemene werking van het extraheren van de gegevens uit het JSON-type in MySQL en zien verder hoe u met JSON-gegevenstypen in een MySQL-tabel kunt werken om de verschillende gegevens uit kolommen te extraheren.

Hoe de JSON-gegevens in MySQL te extraheren

Wanneer u de JSON-gegevens in MySQL wilt extraheren, is de belangrijkste functie die u moet gebruiken JSON_EXTRACT, die met de volgende syntaxis werkt:







JSON_EXTRACT ( json_file, pad [ , pad ] ... ) ;

U moet twee argumenten opgeven bij het uitvoeren van de functie. Het eerste argument is het JSON-document. De andere is het pad naar de waarde in het JSON-gegevenstype dat u wilt extraheren. Laten we verschillende voorbeelden geven om te helpen begrijpen hoe u de gegevens uit het JSON-type in MySQL kunt extraheren.



Voorbeeld 1: Eén waarde extraheren

Het eerste voorbeeld is een eenvoudige query die één waarde retourneert op basis van het opgegeven pad in de opgegeven kolom in de JSON-gegevens. In het volgende voorbeeld wordt het pad opgegeven na de puntoperator, en het pad is een sleutelnaam in de JSON-gegevens.







De uitvoer bevat de opgegeven sleutelnaam die u wilt bereiken en wordt tussen aanhalingstekens afgedrukt. Om de aanhalingstekens te verwijderen, kunt u de JSON_VALUE() gebruiken in plaats van de JSON_EXTRACT() zoals in het volgende voorbeeld:



Voorbeeld 2: meerdere waarden extraheren

Wanneer u meerdere paden in de JSON-gegevens extraheert, moet u de doelpaden opgeven na een puntoperator en deze met komma's scheiden. Laten we een voorbeeld nemen waarin we twee waarden willen extraheren uit dezelfde JSON-gegevens die we in het vorige voorbeeld hebben gebruikt. Daarvoor hebben we ons voorbeeld zoals hieronder weergegeven:

Voorbeeld 3: De JSON-gegevens uit een array extraheren

Wanneer u uw JSON-gegevens in een array heeft, kunt u deze extraheren door de locatie van de specifieke waarde op te geven.

Hier is een voorbeeld waarin we een reeks getallen hebben en de waarde op positie 3 extraheren met behulp van het “$”-teken:

Voorbeeld 4: De JSON-gegevens uit een tabel extraheren

Stel dat u een tabel hebt met een kolom met JSON. Het is mogelijk om er ook de gegevens uit te halen. Laten we een voorbeeldtabel maken die we ter demonstratie zullen gebruiken. We noemen onze tabel 'cursus', die drie kolommen heeft.

We kunnen de gegevens ook in onze tabel invoegen.

Onze definitieve tabel met de JSON-gegevens ziet er als volgt uit:

Stel dat we de JSON-gegevens willen extraheren in de kolom “course_details” in de tabel waar de code gelijk is aan F12. We voeren het volgende commando uit. Houd er rekening mee dat we in JSON_EXTRACT() het eerste argument opgeven als de kolom die de JSON-gegevens bevat, en dat het tweede argument de specifieke waarde in de JSON-gegevens is.

Wanneer u de sleutelnaam opgeeft, moet u beginnen met de “$” en de puntoperator. In ons geval is de sleutelnaam 'Code' en we willen de waarden vinden waarbij de code overeenkomt met bepaalde gegevens.

De vorige uitvoer kwam overeen met onze verwachte uitkomst, wat bevestigt dat we erin zijn geslaagd de JSON-gegevens te extraheren.

U kunt ook de specifieke kolommen in uw tabel opgeven die u wilt ophalen. Vervolgens kunt u de operator “->” gebruiken voor de JSON-gegevens. Het staat ook voor JSON_EXTRACT() en u identificeert de doelwaarde met behulp van de operatoren “$” en punt.

In het volgende voorbeeld worden twee kolommen geselecteerd en wordt de sleutelnaam “Name” uit de JSON-gegevens voor alle vermeldingen gehaald:

U kunt de aanhalingstekens in de geëxtraheerde gegevens verwijderen door de operator “->” te vervangen door de operator “->>” en vervolgens de naam van de doelsleutel op te geven, zoals in het volgende voorbeeld:

Conclusie

In dit bericht wordt uitgelegd hoe u de gegevens uit het JSON-type in MySQL kunt extraheren. We hebben verschillende voorbeelden gegeven van het implementeren van de ‘extract’-functie en de verschillende opties die u kunt gebruiken. Hopelijk heeft dit uw vraag opgelost en heeft u inzicht gekregen in hoe u met de JSON-gegevens in MySQL kunt werken.