#> i #>>
Wcześniej, aby odpytywać zagnieżdżone dane dokumentów w Postgres JSON, stosowano łańcuchowe użycie operatorów -> i ->>. Przy głęboko zagnieżdżonych danych takie zapytania mogą jednak stać się długie i trudne do odczytania oraz debugowania. Rozwiązaniem są operatory #> i #>> dostępne w Postgresie. W tym ćwiczeniu przećwiczysz ich użycie, odpytując tabelę nested_reviews, której struktura jest pokazana poniżej:

pandas zostało zaimportowane jako pd, a obiekt połączenia jest dostępny pod zmienną db_engine. Powodzenia!
To ćwiczenie jest częścią kursu
Wprowadzenie do NoSQL
Instrukcje do ćwiczenia
- Użyj funkcji
json_typeof()oraz operatora#>, aby sprawdzić typ danych wartości przechowywanej pod kluczemstatementw kolumniereviewtabelinested_reviews. - Pobierz pole
branchzagnieżdżone w obiekcielocationsz kolumnyreviewjako tekst. Nadaj temu polu aliasbranch. - Spróbuj zwrócić pole
zipcodezagnieżdżone w obiekcielocationjako tekst i nadaj mu aliaszipcode.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Attempt to query the statement, nested branch, and nested
# zipcode fields from the review column
query = """
SELECT
____(review ____ '{statement}'),,
review ____ _____ AS ____,
____
FROM nested_reviews;
"""
# Execute the query, render results
data = pd.read_sql(query, db_engine)
print(data)