TimechoDB V2.0.6 版本正式发布!
TimechoDB 是由 IoTDB 原厂团队开发的企业级时序数据库产品。V2.0.6 版本新增表模型查询写回功能,新增访问控制黑白名单功能,新增位操作函数(内置标量函数)以及可下推的时间函数,同时对数据库监控、性能、稳定性进行了全方位提升。
更多关于 V2.0.6 版本信息,欢迎联系我们获得企业版安装包!
主要发布内容
-
查询模块:支持表模型查询写回功能
-
查询模块:表模型行模式识别支持使用聚合函数,捕获连续数据进行分析计算
-
查询模块:表模型新增内置标量函数-位操作函数
-
查询模块:表模型新增可下推的 EXTRACT 时间函数
-
系统模块:新增访问控制,支持用户自定义配置黑白名单功能
-
其他:用户默认密码更新为安全强度更高的“TimechoDB@2021”
...
功能详解:表模型查询写回功能
功能介绍
查询写回功能支持表模型的追加式数据写回,通过 INSERT INTO QUERY 语法将查询结果写入已存在的目标表。
语法:
INSERT INTO table_name [ ( column [, ... ] ) ] query
语法说明:
-
table_name:目标表名称(必须已存在);
-
(column [, ... ]):可选,指定目标表的列:必须包含时间戳列;必须包含至少一个 Field 列;允许不指定 TAG 列,允许未指定列自动填充为 NULL;
-
query:查询语句,支持三种形式:
-
querySpecification:直接查询,例如 insert into testtb_copy select * from testtb;
-
table:表引用,例如 insert into testtb_copy table testtb;
-
subquery:子查询,例如 insert into t1 (select * from t2);
使用举例
示例数据:
- 创建数据库与源表,插入测试数据
-- 1. 创建数据库
CREATE DATABASE testdb;
USE testdb;-- 2. 创建源表(含Tag列与Field列)
CREATE TABLE testtb(time TIMESTAMP,id STRING TAG,voltage FLOAT FIELD
);-- 3. 插入测试数据
INSERT INTO testtb VALUES
(1000, '1', 1.0),
(2000, '2', 2.0),
(3000, '3', 3.0);
- 创建目标表(结构与源表一致,用于接收查询结果)
CREATE TABLE testtb_copy(time TIMESTAMP,id STRING TAG,voltage FLOAT FIELD
);
示例 1:全列查询写回
-- 将testtb的所有数据追加写入testtb_copy
INSERT INTO testtb_copy SELECT * FROM testtb;
执行结果:testtb_copy 新增 3 行数据,与源表数据完全一致。
示例 2:指定列查询写回(含缺失列)
-- 仅查询time和voltage列,id列自动填充为NULL
INSERT INTO testtb_copy (time, voltage) SELECT time, voltage FROM testtb;
执行结果:testtb_copy 新增 3 行数据,id 列值均为 NULL,time 和 voltage 与源表一致。
示例 3:带筛选条件的查询写回
-- 查询voltage>1.5的数据,写入目标表
INSERT INTO testtb_copy SELECT * FROM testtb WHERE voltage > 1.5;
执行结果:testtb_copy 新增 2 行数据(对应源表中 id=2 和 id=3 的记录)。