常用SQL语句
数据库管理
数据库(Database)类似关系数据库中的 Database,是一组结构化的时序数据的集合。
- 创建数据库
创建一个名为 root.ln 的数据库,语法如下:
CREATE DATABASE root.ln
- 查看数据库
查看所有数据库:
SHOW DATABASES
- 删除数据库
删除名为 root.ln 的数据库:
DELETE DATABASE root.ln
- 统计数据库数量
统计数据库的总数
COUNT DATABASES
时间序列管理
时间序列(Timeseries)是以时间为索引的数据点的集合,在IoTDB中时间序列指的是一个测点的完整序列,本节主要介绍时间序列的管理方式。
- 创建时间序列
需指定编码方式与数据类型。例如创建一条名为root.ln.wf01.wt01.temperature的时间序列:
CREATE TIMESERIES root.ln.wf01.wt01.temperature WITH datatype=FLOAT,ENCODING=RLE
- 查看时间序列
查看所有时间序列:
SHOW TIMESERIES
使用通配符匹配数据库root.ln下的时间序列:
SHOW TIMESERIES root.ln.**
- 删除时间序列
删除名为 root.ln.wf01.wt01.temperature 的时间序列
DELETE TIMESERIES root.ln.wf01.wt01.temperature
- 统计时间序列
统计时间序列的总数
COUNT TIMESERIES root.**
统计某通配符路径下的时间序列数量:
COUNT TIMESERIES root.ln.**
时间序列路径管理
除时间序列概念外,IoTDB中还有子路径、设备的概念。
**子路径:**是一条完整时间序列名称中的一部分路径,如时间序列名称为root.ln.wf01.wt01.temperature,则root.ln、root.ln.wf01、root.ln.wf01.wt01都是其子路径。
**设备:**是一组时间序列的组合,在 IoTDB 中设备是由root至倒数第二级节点的子路径,如时间序列名称为root.ln.wf01.wt01.temperature,则root.ln.wf01.wt01是其设备
- 查看设备
SHOW DEVICES
- 查看子路径
查看 root.ln 的下一层:
SHOW CHILD PATHS root.ln
- 查看子节点
查看 root.ln 的下一层:
SHOW CHILD NODES root.ln
- 统计设备数量
统计所有设备
COUNT DEVICES
- 统计节点数
统计路径中指定层级的节点个数
COUNT NODES root.ln.** LEVEL=2
查询数据
以下为IoTDB中常用查询语句。
- 查询指定时间序列的数据
查询root.ln.wf01.wt01设备下的所有时间序列的数据
SELECT * FROM root.ln.wf01.wt01
- 查询某时间范围内的时间序列数据
查询root.ln.wf01.wt01.temperature时间序列中时间戳大于 2022-01-01T00:05:00.000 的数据
SELECT temperature FROM root.ln.wf01.wt01 WHERE time > 2022-01-01T00:05:00.000
- 查询数值在指定范围内的时间序列数据
查询root.ln.wf01.wt01.temperature时间序列中数值大于 36.5 的数据:
SELECT temperature FROM root.ln.wf01.wt01 WHERE temperature > 36.5
- 使用 last 查询最新点数据
SELECT last * FROM root.ln.wf01.wt01