IoTDB 入门教程 基础篇⑥——数据库SQL操作 | 数据库管理和数据读写
一、前文IoTDB入门教程——导读
本博文主要报告数据库管理和数据读写
二、数据库管理
2.1 创建数据库
CREATE DATABASE root.ln
IoTDB> CREATE DATABASE root.test
Msg: The statement is executed successfully.
注意:必须是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
注意: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.
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
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
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
三、数据读写
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
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
[*]新增多条数据
注意:新增多条数据,需要传入时间戳参数
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
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
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
四、参考
SQL手册 | IoTDB Website
数据增删 | IoTDB Website
数据查询 | IoTDB Website
以为好,就一键三连呗(点赞+收藏+关注)
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]