QueryDeviceBySQL_物联网平台_API文档

插件下载了解更多
VS Code 插件
安装插件之前,确保已安装 VS Code安装插件之前,确保已安装 VS Code
Alibaba Cloud Developer Toolkit is a collection of extensions that can help access Alibaba Cloud services in Visual Studio Code.
JetBrains 插件
安装插件之前,确保已安装 JetBrains IDE安装插件之前,确保已安装 JetBrains IDE
The Alibaba Cloud Developer Toolkit for JetBrains makes it easier to access Alibaba Cloud services.

接口说明

使用说明

  • 仅支持搜索华东 2(上海)、华北 2(北京)、华南 1(深圳)地域企业版实例中的设备。
  • 调用该接口,单次最多查询到 10,000 个设备。使用说明,请参见下文 SQL 语句的LIMIT子句说明。

QPS 限制

单个阿里云账号调用该接口的每秒请求数(QPS)最大限制为 10。

说明 RAM 用户共享阿里云账号配额。

流控信息

当前云产品API请求速率暂未透出。

授权信息

如下是此API对应的授权信息,用于RAM权限策略语句的Action元素中,为RAM用户或RAM角色授予调用此API的权限。请通过 RAM 访问控制设置,使用方法可参考访问控制帮助文档

具体说明如下:展开详情

操作访问级别资源类型条件关键字关联操作
iot:QueryDeviceBySQL
Get
全部资源
*

请求参数

字段名称字段详情
IotInstanceIdstring

实例 ID。您可在物联网平台控制台的实例概览页面,查看当前实例的 ID展开详情

示例值:iot-cn-0pp1n8t****
SQLstring

查询设备的类 SQL 语句。具体要求和示例见下文请求参数补充说明。

示例值:SELECT * FROM device where product_key = "a1*********" limit 100, 20

请求说明

使用 QueryDeviceBySQL 进行设备高级搜索时,类 SQL 语句由 SELECT 子句、WHERE 子句、ORDER BY 子句(可选)、LIMIT 子句(可选)组成。长度限制 400 个字符。 示例: SELECT * FROM device WHERE product_key = "a1*********" order by active_time limit 0,10

SQL 子句说明
SELECT 子句SELECT [field]/[count(*)] FROM device
其中 field 为需要获取的字段,请参见下面的检索字段说明。也可填*,获取所有字段。
如果需要获取 count 计数,则填 count(*)。
WHERE 子句WHERE [condition1] AND [condition2]
最多使用 5 个 condition,且不支持嵌套,请参见下面的检索字段说明、运算符说明。
连接词支持 AND、OR,最多使用 5 个连接词。
ORDER BY 子句(可选)ORDER BY 子句用于实现自定义排序,可自定义排序的字段包括 gmt_create、gmt_modified、active_time。
该子句可不填,不填时随机排序。
LIMIT 子句(可选)LIMIT 子句用于控制查询的偏移量,有两种用法,参见下表“LIMIT 子句使用方法”。
如果不填 LIMIT 子句,则默认为limit 20

LIMIT 子句使用方法:

方法说明
limit k限制 k<=50,即单页最大为 50。示例:
SELECT * FROM device WHERE product_key = "a1*****" limit 10
limit n,k限制 n+k<=10000 且 k<=50,即最大偏移量为 10000 且单页最大为 50。示例:
SELECT * FROM device WHERE product_key = "a1*****" limit 40,10

检索字段说明

字段名类型说明
product_keytext设备所属产品 ProductKey。
iot_idtext设备标识符。默认返回 iot_id。
nametext设备名称。
active_timedate设备激活时间。格式为 yyyy-MM-dd HH:mm:ss.SSS,精确到毫秒。
nicknametext设备备注名称。
gmt_createdate设备创建时间。格式为 yyyy-MM-dd HH:mm:ss.SSS,精确到毫秒。
gmt_modifieddate设备信息最后一次更新时间。格式为 yyyy-MM-dd HH:mm:ss.SSS,精确到毫秒。
statustext设备状态,取值:
ONLINE:在线。
OFFLINE:离线。
UNACTIVE:未激活。
DISABLE:已禁用。
group.group_idtext设备分组 ID。
tag.tag_nametext设备标签名。
tag.tag_valuetext设备标签值。
ota_module.nametextOTA 模块名称。
与 ota_module.version 配合使用,用于指定设备当前 OTA 版本号对应的 OTA 模块。
ota_module.version 可不传入,不传入时,将不能根据模块名称检索设备。
ota_module.versiontextOTA 固件版本。

运算符说明

运算符支持的字段数值类型
=number、date、text
!=number、date、text
>number、date
<number、date
LIKEtext

其中:

  • =和!=:使用时,支持检索字段值取值为 null。

  • LIKE:使用时,支持前缀匹配,不支持后缀匹配或通配符匹配。前缀不得少于 4 个字符,且不能包含任何特殊字符,例如反斜线(\)、正斜线(/)、and(&)、加号(+)、短划线(-)、感叹号(!)、半角圆括号(())、半角冒号(:)、波浪线(~)、大括号({})、星号(*)、半角问号(?)等。前缀填写完成后,必须固定以% 结尾。

    示例:SELECT * FROM device where product_key = "a1*********" and name LIKE "test%" limit 10

调用 API 时,除了本文介绍的该 API 的特有请求参数,还需传入公共请求参数。公共请求参数说明,请参见公共参数文档

返回参数

字段名称字段详情
Codestring

调用失败时,返回的错误码。更多信息,请参见错误码

示例值:iot.system.SystemException
ErrorMessagestring

调用失败时,返回的出错信息。

示例值:系统异常
RequestIdstring

阿里云为该请求生成的唯一标识符。

示例值:E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565
TotalCountinteger<int64>

当 SELECT 子句为SELECT count(*) FROM device时,返回的 count 计数。

注意 请注意,该值为 Long 类型,在某些语言中可能存在精度丢失的风险,请小心使用。
示例值:100
Successboolean

是否调用成功。展开详情

示例值:true
Dataarray<object>

调用成功时,返回的设备信息。

返回示例

变更历史

暂无变更历史