---
title: 统计
---

# 统计

> 该接口为云能力，需开通授权后使用，关于云能力可[查看文档](/cn/miniapp/common/desc/tech-stack/api) <br/>_**<font color="red">目前云能力在 `开发者工具`环境无法使用，需要打包后或真机调试使用。</font>**_

> _**<font color="red">📢注意：统计能力使用需要提交工单开通产品数据统计，请在使用前 [提交快速工单](https://service.console.tuya.com/8/3/list?source=support_center)。</font>**_

<Image src="/images/api/cloud/cloud_support.jpg" style={{width: 400}} />

## 接口能力

对智能计量的能力我们提供了下接口能力，开发者可直接调用 `API` 完成计量相关业务开发。

**注意，以下 API 需要在 `小程序基础库 >=2.18.1` 使用。**

| 接口名                 | 描述                                           |
| ---------------------- | ---------------------------------------------- |
| getStatisticsConfig    | 获取统计数据的配置信息                         |
| getStatisticsRang15min | 15min 为时间间隔，获取设备日期区间的统计数据   |
| getStatisticsRangHour  | 小时为时间间隔，获取设备日期区间的统计数据     |
| exportStatisticsHour   | 小时为时间间隔，导出设备日期区间的统计数据     |
| getStatisticsRangDay   | 天为时间间隔，获取设备日期区间的统计数据       |
| exportStatisticsDay    | 天为时间间隔，导出设备日期区间的统计数据       |
| getStatisticsRangMonth | 月为时间间隔，获取导出设备日期区间的统计数据   |
| exportStatisticsMonth  | 月为时间间隔，导出设备在过去一个月内的统计数据 |
| resetStatistics        | 重置设备的统计数据                             |

## 关于图表类需求的统计接口中的 type 参数的解释

### 统计类型说明

> 下面的时间间隔目前写的都是`1小时`，可以换成支持的`1天`或`1个月`。

#### sum

把 `1小时` 内上报的数据进行 `累加`，得到该时段数据的 `总和`。适用于累计量（如用电量、用水量）。

#### minux

取 `1小时` 内上报数据的 **最大值**，减去 `上个小时` 上报数据的 **最大值**，得到该时段的 **增量/用量**。适用于表计、计数器类设备的时段用量（如电表、水表每时段用量）。

- Tip: 如果 `上个小时` 没有数据，再之前的上报的最大数据相减，得到`这个小时`的使用数据。
- Tip: 这个类型本应该是 minus, 因为一开始（三年前）的单词拼错了，所以现在就一直用 `minux`了。

#### avg

把 `1小时` 内上报的数据，进行 `累加` 操作，并除以上报的 `次数`，得到这个 `小时`数据的 `平均值`。适用于温度、湿度等需要看平均水平的指标。

#### min

统计 `1小时` 内上报的数据的最小值。适用于最低温度、最低电量、谷值功率等场景。

#### max

统计 `1小时` 内上报的数据的最大值。适用于最高温度、峰值功率、用电高峰等场景。

#### count

统计 `1小时` 内上报的数据的次数。适用于开关次数、上报频次、事件次数等场景。

#### recent

统计离 `整点时间` 最近的那个点，该类型仅支持按小时统计，不支持按天或按月。适用于需要对齐整点采样的曲线展示（如每小时一个点的折线图）。

### 统计间隔

#### 按小时统计

简单说就是根据`统计类型`统计一个小时内上报的数据，然后聚合成一个点

#### 按天获取

简单说就是根据`统计类型`统计一天内上报的数据，然后聚合成一个点

#### 按月统计

简单说就是根据`统计类型`统计月内上报的数据，然后聚合成一个点
