当前位置:   article > 正文

IoTDB 入门教程 基础篇⑥——数据库SQL操作 | 数据库管理和数据读写_iotdb sql

iotdb sql

一、前文

IoTDB入门教程——导读

本博文主要讲述数据库管理和数据读写

二、数据库管理

2.1 创建数据库

CREATE DATABASE root.ln

IoTDB> CREATE DATABASE root.test
Msg: The statement is executed successfully.
  • 1
  • 2

注意:必须是root.开头

这一点也是我一直吐槽的地方,为啥要限制必须root.开头呢?

全部都是root.开头不就等于全部都没有root.开头。意义何在呢。

IoTDB> CREATE DATABASE test
Msg: org.apache.iotdb.jdbc.IoTDBSQLException: 700: Error occurred while parsing SQL to physical plan: line 1:16 mismatched input 'test' expecting ROOT
IoTDB> CREATE DATABASE test.test
Msg: org.apache.iotdb.jdbc.IoTDBSQLException: 700: Error occurred while parsing SQL to physical plan: line 1:16 mismatched input 'test' expecting ROOT
  • 1
  • 2
  • 3
  • 4

注意:Database的父子节点都不能再设置 database

IoTDB> CREATE DATABASE root.test.aa
Msg: org.apache.iotdb.jdbc.IoTDBSQLException: 501: root.test has already been created as database
IoTDB> CREATE DATABASE root.test1.aa
Msg: The statement is executed successfully.
  • 1
  • 2
  • 3
  • 4

2.2 查询数据库

SHOW DATABASES;

IoTDB> SHOW DATABASES;
+----------------+----+-----------------------+---------------------+---------------------+
|        Database| TTL|SchemaReplicationFactor|DataReplicationFactor|TimePartitionInterval|
+----------------+----+-----------------------+---------------------+---------------------+
|      root.user1|null|                      1|                    1|            604800000|
|   root.test1.aa|null|                      1|                    1|            604800000|
|       root.test|null|                      1|                    1|            604800000|
|root.water_meter|null|                      1|                    1|            604800000|
+----------------+----+-----------------------+---------------------+---------------------+
Total line number = 4
It costs 0.010s
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

2.3 删除数据库

DELETE DATABASE root.ln

IoTDB> DELETE DATABASE root.user1
Msg: The statement is executed successfully.
IoTDB> SHOW DATABASES;
+----------------+----+-----------------------+---------------------+---------------------+
|        Database| TTL|SchemaReplicationFactor|DataReplicationFactor|TimePartitionInterval|
+----------------+----+-----------------------+---------------------+---------------------+
|   root.test1.aa|null|                      1|                    1|            604800000|
|       root.test|null|                      1|                    1|            604800000|
|root.water_meter|null|                      1|                    1|            604800000|
+----------------+----+-----------------------+---------------------+---------------------+
Total line number = 3
It costs 0.006s
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
IoTDB> DELETE DATABASE root.test1.aa
Msg: The statement is executed successfully.
IoTDB> SHOW DATABASES;
+----------------+----+-----------------------+---------------------+---------------------+
|        Database| TTL|SchemaReplicationFactor|DataReplicationFactor|TimePartitionInterval|
+----------------+----+-----------------------+---------------------+---------------------+
|       root.test|null|                      1|                    1|            604800000|
|root.water_meter|null|                      1|                    1|            604800000|
+----------------+----+-----------------------+---------------------+---------------------+
Total line number = 2
It costs 0.005s
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

三、数据读写

3.1 查询数据

select status from root.test.test

IoTDB> select status from root.test.test
+-----------------------------+---------------------+
|                         Time|root.test.test.status|
+-----------------------------+---------------------+
|2024-05-03T19:18:07.573+08:00|                  1.0|
|2024-05-03T19:18:19.825+08:00|                  2.0|
|2024-05-03T19:18:21.893+08:00|                  3.0|
+-----------------------------+---------------------+
Total line number = 3
It costs 0.127s
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

3.2 新增数据

  • 新增单条数据

INSERT INTO root.test.test(status) values(1)

IoTDB> INSERT INTO root.test.test(status) values(1)
Msg: The statement is executed successfully.
IoTDB> INSERT INTO root.test.test(status) values(2)
Msg: The statement is executed successfully.
IoTDB> INSERT INTO root.test.test(status) values(3)
Msg: The statement is executed successfully.
IoTDB> select status from root.test.test
+-----------------------------+---------------------+
|                         Time|root.test.test.status|
+-----------------------------+---------------------+
|2024-05-03T19:18:07.573+08:00|                  1.0|
|2024-05-03T19:18:19.825+08:00|                  2.0|
|2024-05-03T19:18:21.893+08:00|                  3.0|
+-----------------------------+---------------------+
Total line number = 3
It costs 0.127s
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 新增多条数据

注意:新增多条数据,需要传入时间戳参数

INSERT INTO root.test.test(timestamp,status) values(1,4),(2,5),(3,6)

IoTDB> INSERT INTO root.test.test(timestamp,status) values(1,4),(2,5),(3,6)
Msg: The statement is executed successfully.
IoTDB> select status from root.test.test
+-----------------------------+---------------------+
|                         Time|root.test.test.status|
+-----------------------------+---------------------+
|1970-01-01T08:00:00.001+08:00|                  4.0|
|1970-01-01T08:00:00.002+08:00|                  5.0|
|1970-01-01T08:00:00.003+08:00|                  6.0|
|2024-05-03T19:18:07.573+08:00|                  1.0|
|2024-05-03T19:18:19.825+08:00|                  2.0|
|2024-05-03T19:18:21.893+08:00|                  3.0|
+-----------------------------+---------------------+
Total line number = 6
It costs 0.012s
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

3.3 修改数据

传入同样的时间戳,即可覆盖该时间戳的上一条数据

IoTDB> INSERT INTO root.test.test(timestamp,status) values(1,444)
Msg: The statement is executed successfully.
IoTDB> SELECT status FROM root.test.test
+-----------------------------+---------------------+
|                         Time|root.test.test.status|
+-----------------------------+---------------------+
|1970-01-01T08:00:00.001+08:00|                444.0|
|1970-01-01T08:00:00.002+08:00|                  5.0|
|1970-01-01T08:00:00.003+08:00|                  6.0|
|2024-05-03T19:18:07.573+08:00|                  1.0|
|2024-05-03T19:18:19.825+08:00|                  2.0|
|2024-05-03T19:18:21.893+08:00|                  3.0|
+-----------------------------+---------------------+
Total line number = 6
It costs 0.010s
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

3.4 删除数据

DELETE FROM root.test.test.status where time < 4

IoTDB> DELETE FROM root.test.test.status where time < 4
Msg: The statement is executed successfully.
IoTDB> SELECT status FROM root.test.test
+-----------------------------+---------------------+
|                         Time|root.test.test.status|
+-----------------------------+---------------------+
|2024-05-03T19:18:07.573+08:00|                  1.0|
|2024-05-03T19:18:19.825+08:00|                  2.0|
|2024-05-03T19:18:21.893+08:00|                  3.0|
+-----------------------------+---------------------+
Total line number = 3
It costs 0.014s

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

四、参考

SQL手册 | IoTDB Website

数据增删 | IoTDB Website

数据查询 | IoTDB Website

觉得好,就一键三连呗(点赞+收藏+关注)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/943025
推荐阅读
相关标签
  

闽ICP备14008679号