Bắt đầu ngayBắt đầu miễn phí

#> và #>>

Trước đây, để truy vấn dữ liệu tài liệu lồng nhau với Postgres JSON, bạn đã xâu chuỗi các toán tử ->->> với nhau. Tuy nhiên, khi làm việc với dữ liệu lồng sâu, các câu lệnh này có thể trở nên dài và khó đọc cũng như khó xử lý lỗi. Để khắc phục, Postgres cung cấp các toán tử #>#>>. Trong ví dụ này, bạn sẽ luyện tập sử dụng các toán tử này bằng cách truy vấn bảng nested_reviews, có dạng như bên dưới:

nested_reviews table, showing sample data.

pandas đã được nhập với tên pd, và một đối tượng kết nối đã được tạo rồi lưu trong biến db_engine. Chúc bạn học tốt!

Bài tập này là một phần của khóa học

Giới thiệu về NoSQL

Xem khóa học

Hướng dẫn bài tập

  • Sử dụng hàm json_typeof() và toán tử #> để tìm kiểu dữ liệu của giá trị được lưu trong khóa statement của cột review trong bảng nested_reviews.
  • Truy vấn trường branch, trường này lồng trong đối tượng locations, từ cột review, dưới dạng văn bản. Đặt bí danh trường là branch.
  • Hãy thử trả về trường zipcode lồng trong đối tượng location, dưới dạng văn bản và đặt bí danh trường là zipcode.

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.

# 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)
Chỉnh sửa và Chạy Mã