Kom igångKom igång gratis

Bearbeta dokumentdata

Under det här kapitlet har du utforskat ett antal verktyg för att arbeta med semi-strukturerad dokumentdata i Postgres. I den här avslutande övningen sätter du ihop alla dessa verktyg för att skapa ett analysfärdigt dataset. Du arbetar med tabellen nested_reviews, som har formen som visas nedan.

nested_reviews table, showing sample data.

Som en hjälp på vägen har pandas importerats som pd, och ett anslutningsobjekt har skapats och lagrats i variabeln db_engine. Lycka till!

Den här övningen är en del av kursen

Introduktion till NoSQL

Visa kurs

Övningsinstruktioner

  • Använd operatorn #> för att returnera det nästlade fältet branch från objektet location i kolumnen review, som JSON. Ge det aliaset branch.
  • Hämta fältet statement i kolumnen review med operatorn ->>, och ge resultatet aliaset statement.
  • Filtrera resultaten så att endast poster med en reviewer-plats av 'Australia' inkluderas, med hjälp av funktionen json_extract_path_text.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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)
Redigera och kör kod