Xử lý dữ liệu tài liệu
Xuyên suốt chương này, bạn đã khám phá nhiều công cụ để làm việc với dữ liệu tài liệu bán cấu trúc trong Postgres. Ở bài tập cuối cùng này, bạn sẽ vận dụng tất cả các công cụ đó để tạo ra một tập dữ liệu sẵn sàng cho phân tích. Bạn sẽ làm việc với bảng nested_reviews, có dạng như bên dưới.

Để bạn khởi động nhanh, pandas đã được nhập với bí danh pd, và một đối tượng kết nối đã được tạo, lưu trong biến db_engine. Chúc bạn may mắn!
Bài tập này là một phần của khóa học
Giới thiệu về NoSQL
Hướng dẫn bài tập
- Sử dụng toán tử
#>để trả về trường lồng nhaubranchtừ đối tượnglocationtrong cộtreview, dưới dạng JSON. Đặt bí danh làbranch. - Truy vấn trường
statementtrong cộtreviewbằng toán tử->>, đặt bí danh kết quả làstatement. - Lọc kết quả chỉ bao gồm các bản ghi có
reviewerở vị trí'Australia', với sự hỗ trợ của hàmjson_extract_path_text.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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)