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

Работа с данными документов

В этой главе вы познакомились с рядом инструментов для работы с полуструктурированными данными документов в Postgres. В этом финальном упражнении вы примените все эти инструменты, чтобы подготовить набор данных, готовый к анализу. Вы будете работать с таблицей nested_reviews, пример которой показан ниже.

nested_reviews table, showing sample data.

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

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

Введение в NoSQL

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

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

  • С помощью оператора #> извлеките вложенное поле branch из объекта location в столбце review в формате JSON. Задайте псевдоним branch.
  • Получите поле statement из столбца review, используя оператор ->>, и задайте псевдоним statement.
  • Отфильтруйте результаты так, чтобы остались только записи, в которых местоположение рецензента (reviewer) равно 'Australia', — воспользуйтесь функцией json_extract_path_text.

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

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

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