如何在Azure Digital Twins中查询孪生体的指定属性?
在Azure Digital Twins中查询孪生体时仅返回特定属性
你可以通过以下两种方式实现仅获取孪生体的指定属性,避免冗余数据:
1. 使用ADT查询语言筛选返回属性
将查询语句中的SELECT *替换为具体需要的属性名称,语法如下:
SELECT Twins.[属性名1], Twins.[属性名2] FROM DIGITALTWINS Twins WHERE Twins.$dtId = 'xxx'
例如,如果你只需要孪生体的temperature和humidity属性,查询语句可以写成:
SELECT Twins.temperature, Twins.humidity FROM DIGITALTWINS Twins WHERE Twins.$dtId = 'device-001'
同时支持指定孪生体的系统属性(如$dtId、$etag、$metadata),以及嵌套属性(如Twins.deviceInfo.model)。
2. 使用GetByID API筛选返回属性
调用GetByID API时,通过添加$select查询参数指定需要返回的属性,参数值为多个属性名的逗号分隔列表。示例请求格式如下:
GET /digitaltwins/{孪生体ID}?$select=属性名1,属性名2
比如仅获取temperature和humidity属性的请求:
GET /digitaltwins/device-001?$select=temperature,humidity
该方式会仅返回你指定的属性以及孪生体的核心系统标识信息,大幅减少返回的数据量。
内容的提问来源于stack exchange,提问作者Samuel Engström
相关产品推荐
相关产品推荐

