НачатьНачать бесплатно

#> и #>>

Ранее для запроса вложенных данных в Postgres JSON приходилось объединять операторы -> и ->> в цепочку. Однако при работе с глубоко вложенными структурами такие выражения становятся громоздкими и трудными для чтения и отладки. Для решения этой проблемы в Postgres предусмотрены операторы #> и #>>. В этом упражнении вы попрактикуетесь в их использовании, работая с таблицей nested_reviews, структура которой показана ниже:

nested_reviews table, showing sample data.

pandas импортирован как pd, объект подключения создан и сохранён в переменной db_engine. Удачи!

Это упражнение является частью курса

Введение в NoSQL

Посмотреть курс

Инструкции к упражнению

  • Используйте функцию json_typeof() и оператор #>, чтобы определить тип данных значения, хранящегося в ключе statement столбца review таблицы nested_reviews.
  • Извлеките поле branch, вложенное в объект locations, из столбца review в виде текста. Присвойте полю псевдоним branch.
  • Попробуйте извлечь поле zipcode, вложенное в объект location, в виде текста, присвоив ему псевдоним zipcode.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# 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)
Редактировать и запускать код