Aan de slagGa gratis aan de slag

Documentgegevens bewerken

In dit hoofdstuk heb je verschillende tools verkend om met semi-gestructureerde documentgegevens in Postgres te werken. In deze laatste oefening ga je al deze tools inzetten om een gegevensset te maken die klaar is voor analyse. Je werkt met de tabel nested_reviews, die de onderstaande vorm heeft.

nested_reviews table, showing sample data.

Om je op weg te helpen is pandas geïmporteerd als pd, en is er een connectieobject aangemaakt en opgeslagen in de variabele db_engine. Succes!

Deze oefening maakt deel uit van de cursus

Introductie tot NoSQL

Cursus bekijken

Oefeninstructies

  • Gebruik de #>-operator om het geneste veld branch uit het location-object in de kolom review als JSON te retourneren. Geef dit het alias branch.
  • Query het veld statement in de kolom review met de ->>-operator en alias het resultaat als statement.
  • Filter de resultaten zodat alleen records met een reviewer-locatie van 'Australia' overblijven, met behulp van de functie json_extract_path_text.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Extract fields from JSON, and filter by reviewer location
query = """
    SELECT
    	review_id,
        ____ #> '{____, ____}' AS ____,
        ____ ->> '____' AS ____,
        rating
    FROM nested_reviews
    WHERE ____(____, '____', '____') = 'Australia'
    ORDER BY rating DESC;
"""

data = pd.read_sql(query, db_engine)
print(data)
Code bewerken en uitvoeren