首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查询设备孪生数组属性

查询设备孪生数组属性
EN

Stack Overflow用户
提问于 2020-09-23 21:17:33
回答 2查看 266关注 0票数 0

如何查询报告的双胞胎是字符串数组,例如:

代码语言:javascript
复制
"SupportedCommands": [
                "firmwareUpdate",
                "diagnostics",
                "getLog",
                "calculateHash"
            ]

我检查了一些命令,比如

代码语言:javascript
复制
WHERE CONTAINS(array, string) 

代码语言:javascript
复制
WHERE [string] IN [array] 

但是没有人工作

EN

回答 2

Stack Overflow用户

发布于 2020-09-23 23:44:23

查询双胞胎和作业时,唯一支持的函数是:

IS_DEFINED(属性)

请参阅更多详细信息here

由于可以在两个步骤中使用查询,其中第一个步骤(如在IoT集线器服务端发生的预查询过程)将根据属性的值返回所有双胞胎,请参阅以下示例:

代码语言:javascript
复制
SELECT 
  deviceId, properties.reported.SupportedCommands 
FROM devices 
WHERE properties.reported.SupportedCommands NIN [ null, [], ['abc', '123']  ]

第二步将在客户端使用LINQ语句,请参见以下示例:

代码语言:javascript
复制
var dummy = new { SupportedCommands = new string[] { } };
var query2 = (await query1.GetNextAsJsonAsync()).Where(i => JsonConvert.DeserializeAnonymousType(i, dummy).SupportedCommands.Contains("getLog"));
票数 1
EN

Stack Overflow用户

发布于 2021-06-22 21:37:37

我是这样解决的:

代码语言:javascript
复制
SELECT * FROM devices 
WHERE ARRAY_CONTAINS(tags.SupportedCommands,'firmwareUpdate')

我希望它对你有用。

Query on IoT Hub to find a device using properties list

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64028885

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档