PDF (US Ltr) - 1.2Mb
PDF (A4) - 1.2Mb
希望存储标准 SQL 列和文档的应用程序可以将集合转换为表。在这种情况下,可以使用 Schema.getCollectionAsTable()
函数将集合提取为 Table 对象。从那一刻起,它将被视为一个常规表。可以使用以下语法在 SQL CRUD 操作中访问文档值
doc->'$.field'
doc->'$.field'
用于访问文档的顶层字段。也可以指定更复杂的路径。
doc->'$.some.field.like[3].this'
使用 Schema.getCollectionAsTable()
函数将集合提取为表后,可以使用所有 SQL CRUD 操作。使用文档访问语法,您可以从集合的文档和额外的 SQL 列中选择数据。
以下示例展示了如何将 JSON 文档字符串插入 doc
字段。
# Get the customers collection as a table
customers = db.get_collection_as_table('customers')
customers.insert('doc').values('{"_id":"001", "name": "Ana", "last_name": "Silva"}').execute()
# Now do a find operation to retrieve the inserted document
result = customers.select(["doc->'$.name'", "doc->'$.last_name'"]).where("doc->'$._id' = '001'").execute()
record = result.fetch_one()
print("Name : %s\n" % record[0])
print("Last Name : %s\n" % record[1])