Azure';在python程序中使用查询资源管理器
我在Azure的CosmosDB数据库中存储了大量JSON文件。我还有一个python程序,可以读取JSON文件。我想从python在Azure的查询资源管理器上运行查询Azure';在python程序中使用查询资源管理器,python,azure,azure-cosmosdb,Python,Azure,Azure Cosmosdb,我在Azure的CosmosDB数据库中存储了大量JSON文件。我还有一个python程序,可以读取JSON文件。我想从python在Azure的查询资源管理器上运行查询 SELECT VALUE Block FROM c JOIN Block IN c.radar50p01 到目前为止,我在python程序中的内容如下 def getCosmosDBClient(): # Initialize the Python Document
SELECT VALUE Block
FROM c
JOIN Block IN c.radar50p01
到目前为止,我在python程序中的内容如下
def getCosmosDBClient():
# Initialize the Python DocumentDB client
client = document_client.DocumentClient(Constants.URL, {'masterKey': Constants.KEY})
return client
def getCosmosDBColl_link():
client = getCosmosDBClient()
db_id = Constants.RADAR_DATABASE_NAME
db_query = "select * from r where r.id = '{0}'".format(db_id)
db = list(client.QueryDatabases(db_query))[0]
db_link = db['_self']
coll_id = Constants.RADAR_COLL_NAME
coll_query = "select * from r where r.id = '{0}'".format(coll_id)
coll = list(client.QueryCollections(db_link, coll_query))
if coll:
coll = coll[0]
else:
raise ValueError("Collection not found in database.")
coll_link = coll['_self']
docs = client.ReadDocuments(coll_link)
return docs
那么,有没有一种方法可以在python中使用上面的查询,这样我就可以得到我特别需要的东西呢
谢谢。如果您的查询已在Azure portal上的查询资源管理器中成功运行,您只需使用该方法进行查询,如下面的代码所示 使用SQL执行查询
# Query them in SQL
query = { 'query': 'SELECT * FROM server s' }
options = {}
options['enableCrossPartitionQuery'] = True
options['maxItemCount'] = 2
result_iterable = client.QueryDocuments(collection['_self'], query, options)
results = list(result_iterable);
print(results)
希望能有帮助。如有任何问题,请随时通知我。它可以正常工作。谢谢最大项目数是多少?我没有把它包括在内,因为它可能是我不想要的东西。