操作文档数据
在本章中,您已经学习了多种在 Postgres 中处理半结构化文档数据的工具。在最后这个练习中,您将把这些工具综合运用,创建一个可用于分析的数据集。您将使用 nested_reviews 表,表结构如下所示。

为便于开始,已将 pandas 导入为 pd,并创建了连接对象,存放在变量 db_engine 中。祝您顺利完成!
本练习是课程的一部分
NoSQL 入门
练习说明
- 使用
#>运算符,从review列中的location对象返回嵌套的branch字段,类型为 JSON。将其别名设为branch。 - 使用
->>运算符查询review列中的statement字段,并将结果别名为statement。 - 使用
json_extract_path_text函数,仅保留reviewer的location为'Australia'的记录。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# 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)