ÎncepețiÎncepe gratuit

Manipularea datelor din documente

Pe parcursul acestui capitol, ai explorat o serie de instrumente pentru a lucra cu date semi-structurate de tip document în Postgres. În acest exercițiu final, vei pune toate aceste instrumente la lucru pentru a crea un set de date pregătit pentru analiză. Vei lucra cu tabela nested_reviews, al cărei format este prezentat mai jos.

nested_reviews table, showing sample data.

Pentru a te ajuta să începi, pandas a fost importat ca pd, iar un obiect de conexiune a fost creat și stocat în variabila db_engine. Mult succes!

Acest exercițiu face parte din cursul

Introducere în NoSQL

Vezi cursul

Instrucțiuni pentru exercițiu

  • Folosind operatorul #>, returnează câmpul imbricat branch din obiectul location din coloana review, ca JSON. Folosește aliasul branch.
  • Interoghează câmpul statement din coloana review folosind operatorul ->>, cu aliasul statement pentru rezultat.
  • Filtrează rezultatele pentru a include doar înregistrările cu locația reviewer egală cu 'Australia', cu ajutorul funcției json_extract_path_text.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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)
Editează și rulează codul