- 最新动态
- 功能总览
- 服务公告
- 计费说明
- 产品介绍
- 快速入门
- 用户指南
- 最佳实践
- 开发指南
-
API参考
- 应用侧API参考
- 设备侧MQTT/MQTTS接口参考
- 设备侧HTTPS接口参考
- 设备侧LwM2M接口参考
- 安全隧道WebSocket接口参考
- 模组AT指令参考
- 修订记录
- SDK参考
- 场景代码示例
-
常见问题
- 热门问题
-
方案咨询
- 连接IoT平台的业务场景有哪些?
- 设备管理服务和设备接入服务合一后的差异点是什么?
- IAM子用户或子项目是否可以开通物联网平台服务?
- 物联网平台支持在华为云的哪些区域开通?
- 华为是否提供模组/硬件终端/应用软件等?
- IAM用户访问API提示没有权限?(是否区分版本?)
- 创建规则或者设置资源文件存储时候提示赋予Security Administrator权限
- 物联网平台设置默认资源空间的规则是什么?
- 设备接入服务如何获取设备数据?
- 物联网平台的资源空间和设备可以无限创建吗?
- 物联网平台支持批量注册设备吗?
- 物联网平台对应用侧和设备侧在开发或使用时有限制吗?
- 物联网平台支持的DTLS加密算法有哪些?
- 物联网平台支持二进制大小端模式切换吗?
- 什么是NB-IoT?
- 物联网平台支持的硬件架构和使用的相关组件有哪些?
- 如何获取平台接入地址?
- 设备集成相关问题
- 设备侧SDK相关问题
- 设备发放相关问题
- LWM2M/CoAP接入相关问题
- MQTT接入相关问题
- 泛协议接入相关问题
- 物模型相关问题
- 消息通信相关问题
- 订阅推送相关问题
- 编解码插件相关问题
- OTA升级相关问题
- 应用集成相关问题
- 实例管理相关问题
- 视频帮助
- 文档下载
- 通用参考
链接复制成功!
设备高级搜索
概述
在海量设备场景下,您可以通过高级搜索功能,通过类SQL语句快速组装灵活的检索条件搜索满足条件的设备,例如:通过前缀模糊搜索设备名称、标签搜索在线设备列表等。本文将介绍高级搜索操作方式以及类SQL语法使用。
使用限制
- 仅标准版实例支持该接口调用,基础版、企业版实例不支持。
- 单账号调用该接口的 TPS 限制最大为1/S(每秒1次请求数)。
使用场景
设备检索:在所有设备-设备列表界面通过类SQL语句方式,检索指定的设备进行后续管理操作。
设备动态分组:通过设备动态分组的类SQL语句规则,过滤出来符合条件的设备自动加入到群组进行管理。
操作步骤
- 访问设备接入服务,单击“管理控制台”进入设备接入控制台。选择您的实例,单击实例卡片进入。
- 在设备接入控制台左侧导航栏,选择“设备 > 所有设备”,进入设备列表页,设备列表默认显示当前实例下的所有设备。
- 单击“高级搜索”按钮,输入类SQL语句,单击“搜索”展示搜索条件下的设备列表。
图1 设备-高级搜索
类SQL语法使用说明
控制台使用类SQL语句时需要省略select、from、order by、limit子句,仅输入where子句编辑自定义条件即可,长度限制为400个字符,子句里的内容大小写敏感,SQL语句的关键字大小写不敏感;控制台默认按照marker字段desc方式排序;
where子句格式:
[condition1] AND [condition2]
示例:
product_id = 'testProductId'
最多支持5个condition,不支持嵌套;支持的检索字段请参见表1和表2。
连接词支持AND、OR,优先级参考标准SQL语法,默认AND优先级高于OR。
字段名 |
类型 |
说明 |
取值范围 |
---|---|---|---|
app_id |
string |
资源空间ID |
长度不超过36,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
device_id |
string |
设备ID |
长度不超过128,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
gateway_id |
string |
网关ID |
长度不超过128,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
product_id |
string |
设备关联的产品ID |
长度不超过36,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
device_name |
string |
设备名称 |
长度不超过256,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。 |
node_id |
string |
设备标识码 |
长度不超过64,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
status |
string |
设备的状态 |
ONLINE(在线)、OFFLINE(离线)、ABNORMAL(异常)、INACTIVE(未激活)、FROZEN(冻结) |
node_type |
string |
设备节点类型 |
GATEWAY(直连设备或网关)、ENDPOINT(非直连设备) |
tag_key |
string |
标签键 |
长度不超过64,只允许中文、字母、数字、以及_.-等字符的组合。 |
tag_value |
string |
标签值 |
长度不超过128,只允许中文、字母、数字、以及_.-等字符的组合。 |
sw_version |
string |
软件版本 |
长度不超过64,只允许字母、数字、下划线(_)、连接符(-)、英文点(.)的组合。 |
fw_version |
string |
固件版本 |
长度不超过64,只允许字母、数字、下划线(_)、连接符(-)、英文点(.)的组合。 |
group_id |
string |
群组id |
长度不超过36,十六进制字符串和连接符(-)的组合。 |
create_time |
string |
设备注册时间 |
格式:yyyy-MM-dd'T'HH:mm:ss.SSS'Z',如:2015-06-06T12:10:10.000Z。 |
marker |
string |
结果记录ID |
长度为24的十六进制字符串,如ffffffffffffffffffffffff。 |
运算符 |
支持的字段 |
---|---|
= |
所有 |
!= |
所有 |
> |
create_time、marker |
< |
create_time、marker |
like |
device_name、node_id、tag_key、tag_value |
in |
除tag_key、tag_value以外字段 |
not in |
除tag_key、tag_value以外字段 |
SQL 限制
- like:只支持前缀匹配,不支持后缀匹配或者通配符匹配。前缀匹配不得少于4个字符,且不能包含任何特殊字符(只允许中文、字母、数字、下划线(_)、连接符(-)),前缀后必须跟上“%”结尾。
- 不支持其他SQL用法,如嵌套SQL、union、join、别名(Alias)等用法。
- SQL长度限制为400个字符,单个请求条件最大支持5个。
- 不支持“null”和空字符串等条件值匹配。