เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

#> และ #>>

ก่อนหน้านี้ การค้นหาข้อมูลเอกสารที่ซ้อนกันใน Postgres JSON ต้องใช้การเชื่อมตัวดำเนินการ -> และ ->> ต่อกันหลายชั้น ซึ่งอาจทำให้คำสั่งยาวและอ่านหรือแก้ไขปัญหาได้ยาก Postgres จึงมีตัวดำเนินการ #> และ #>> มาช่วยแก้ปัญหานี้ ในแบบฝึกหัดนี้จะได้ฝึกใช้ตัวดำเนินการทั้งสองกับตาราง nested_reviews ซึ่งมีโครงสร้างดังนี้:

nested_reviews table, showing sample data.

pandas ถูก import ไว้แล้วในชื่อ pd และมีออบเจกต์การเชื่อมต่อที่จัดเก็บไว้ในตัวแปร db_engine ขอให้โชคดี!

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

NoSQL เบื้องต้น

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ใช้ฟังก์ชัน json_typeof() ร่วมกับตัวดำเนินการ #> เพื่อตรวจสอบชนิดข้อมูลของค่าที่อยู่ใน key 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)
แก้ไขและรันโค้ด