Hogyan lehet adatokat kivonni a JSON-típusból a MySQL-ben

Hogyan Lehet Adatokat Kivonni A Json Tipusbol A Mysql Ben



A MySQL segítségével különböző beállításokkal kinyerheti az adatokat JSON-típusból. A MySQL támogatja a JSON-adattípusokkal való munkát. Ha tudja, hogyan kell csinálni, gyorsan elérheti és kivonhatja az adatokat a JSON-objektumokból.

A mai bejegyzés bemutatja, hogyan nyerhet ki adatokat JSON-típusból a MySQL-ben különböző módokon. Bemutatjuk az adatok JSON-típusból való kinyerésének általános működését a MySQL-ben, és meglátjuk, hogyan dolgozhatunk JSON-adattípusokkal egy MySQL-táblázatban a különböző adatok oszlopokból történő kinyeréséhez.

Hogyan lehet kivonni a JSON-adatokat a MySQL-ben

Ha ki szeretné bontani a JSON-adatokat a MySQL-ben, a fő funkció, amelyet használnia kell, a JSON_EXTRACT, amely a következő szintaxissal működik:







JSON_EXTRACT ( json_file, elérési út [ , pálya ] ... ) ;

A függvény végrehajtásakor két argumentumot kell megadni. Az első argumentum a JSON-dokumentum. A másik a kivonni kívánt JSON-adattípusban található érték elérési útja. Nézzünk meg különféle példákat, amelyek segítenek megérteni, hogyan lehet kivonni az adatokat JSON-típusból a MySQL-ben.



1. példa: Egy érték kinyerése

Az első példa egy egyszerű lekérdezés, amely egy értéket ad vissza a JSON-adatok megadott oszlopában megadott elérési út alapján. A következő példa a pont operátor után adja meg az elérési utat, és az elérési út egy kulcsnév a JSON-adatokban.







A kimenet tartalmazza a megadott kulcsnevet, amelyet elérni kíván, és idézőjelben van kinyomtatva. Az idézőjelek eltávolításához használhatja a JSON_VALUE()-t a JSON_EXTRACT() helyett, a következő példában látható módon:



2. példa: Több érték kinyerése

Ha több útvonalat bont ki a JSON-adatokból, meg kell adnia a célútvonalakat egy pontoperátor után, és vesszővel kell elválasztania őket. Vegyünk egy példát, ahol két értéket szeretnénk kivonni ugyanabban a JSON-adatban, amelyet az előző példában használtunk. Ehhez a következő példánk van:

3. példa: JSON-adatok kinyerése egy tömbből

Ha a JSON-adatok egy tömbben vannak, kibonthatja azokat az adott érték helyének megadásával.

Íme egy példa, ahol van egy számtömbünk, és a 3. pozícióban lévő értéket a „$” jel segítségével kinyerjük:

4. példa: JSON-adatok kinyerése egy táblázatból

Tegyük fel, hogy van egy táblázata, amely JSON-t tartalmazó oszlopot tartalmaz. Lehetőség van az adatok kinyerésére is. Készítsünk egy mintatáblázatot, amelyet a demonstrációhoz használunk. Táblázatunkat „pálya”-nak nevezzük, amely három oszlopból áll.

Az adatokat a táblázatunkba is beilleszthetjük.

A JSON-adatokat tartalmazó végső táblázatunk a következőképpen jelenik meg:

Tegyük fel, hogy ki akarjuk bontani a JSON-adatokat a táblázat „course_details” oszlopában, ahol a kód egyenlő az F12-vel. A következő parancsot hajtjuk végre. Vegye figyelembe, hogy a JSON_EXTRACT() az első argumentumot a JSON-adatokat tartalmazó oszlopként adjuk meg, a második argumentum pedig a JSON-adatok adott értéke.

A kulcsnév megadásakor a „$” karakterrel és a pont operátorral kell kezdenie. Esetünkben a kulcs neve a „Kód”, és meg akarjuk találni azokat az értékeket, ahol a kód egyezik egy adott adattal.

Az előző kimenet megfelelt a várt eredménynek, ami megerősíti, hogy sikerült kivonatolnunk a JSON-adatokat.

Megadhatja a táblázat egyes oszlopait is, amelyeket le szeretne kérni. Ezután használhatja a „->” operátort a JSON-adatokhoz. Ez a JSON_EXTRACT() rövidítése is, és a célértéket a „$” és a pont operátorokkal azonosíthatja.

A következő példa két oszlopot választ ki, és az összes bejegyzés JSON-adataiból kivonja a „Name” kulcsnevet:

A kivont adatokból az idézőjeleket úgy távolíthatja el, hogy a „->” operátort „->>” operátorra cseréli, majd megadja a célkulcs nevét a következő példa szerint:

Következtetés

Ez a bejegyzés elmagyarázta, hogyan lehet kivonni az adatokat a JSON-típusból a MySQL-ben. Különböző példákat adtunk a „kivonás” funkció megvalósítására és a különféle lehetőségekre, amelyeket használhat. Remélhetőleg ez javította a lekérdezést, és segített megérteni, hogyan kell dolgozni a JSON-adatokkal a MySQL-ben.