跳至主要內容

常用SQL语句

...大约 3 分钟

常用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

Copyright © 2024 The Apache Software Foundation.
Apache and the Apache feather logo are trademarks of The Apache Software Foundation

Have a question? Connect with us on QQ, WeChat, or Slack. Join the community now.