TDengine 3.3.6.3 虚拟表简单验证

涛思新出的版本提供虚拟表功能,完美解决了多值窄表查询时需要写程序把窄表变成宽表的处理过程,更加优雅。

超级表定义如下:

bash 复制代码
CREATE STABLE st01 (ts TIMESTAMP,v0 INT,v1 BIGINT,v2 FLOAT,v3 BOOL) TAGS (device VARCHAR(32),vtype VARCHAR(32));

提供多个值域,通过tags的vtype字段定义哪个字段有效,使用统一的模型支持数据写入,然后定义查询虚拟表方便查询

bash 复制代码
create vtable v1 ( ts timestamp, c1 int from d1001.v0, c2 float from d1002.v2);

测试下来还是很容易的,具体过程见下面代码和执行结果。

bash 复制代码
ubuntu@ubuntu:~$ taos 
Welcome to the TDengine Command Line Interface, Native Client Version:3.3.6.3 
Copyright (c) 2025 by TDengine, all rights reserved.


  *********************************  Tab Completion  *************************************
  *   The TDengine CLI supports tab completion for a variety of items,                   *
  *   including database names, table names, function names and keywords.                *
  *   The full list of shortcut keys is as follows:                                      *
  *    [ TAB ]        ......  complete the current word                                  *
  *                   ......  if used on a blank line, display all supported commands    *
  *    [ Ctrl + A ]   ......  move cursor to the st[A]rt of the line                     *
  *    [ Ctrl + E ]   ......  move cursor to the [E]nd of the line                       *
  *    [ Ctrl + W ]   ......  move cursor to the middle of the line                      *
  *    [ Ctrl + L ]   ......  clear the entire screen                                    *
  *    [ Ctrl + K ]   ......  clear the screen after the cursor                          *
  *    [ Ctrl + U ]   ......  clear the screen before the cursor                         *
  ****************************************************************************************

Server is TDengine Community Edition, ver:3.3.6.3 and will never expire.

taos> create database pascal;
Create OK, 0 row(s) affected (0.111764s)

taos> use pascal;
Database changed.

taos> CREATE STABLE st01 (ts TIMESTAMP,v0 INT,v1 BIGINT,v2 FLOAT,v3 BOOL) TAGS (device VARCHAR(32),vtype VARCHAR(32));
Create OK, 0 row(s) affected (0.002556s)

taos> INSERT INTO d1001 using st01 tags('dev01','int') (ts,v0) values(now(),1) d1002 using st01 tags('dev02','float') (ts,v2) values(now(),1.3);
Insert OK, 2 row(s) affected (0.001621s)

taos> INSERT INTO d1001 using st01 tags('dev01','int') (ts,v0) values(now(),2) d1002 using st01 tags('dev02','float') (ts,v2) values(now(),2.2);
Insert OK, 2 row(s) affected (0.000726s)

taos> INSERT INTO d1001 using st01 tags('dev01','int') (ts,v0) values(now(),3) d1002 using st01 tags('dev02','float') (ts,v2) values(now(),3.3);
Insert OK, 2 row(s) affected (0.000654s)

taos> create vtable v1 ( ts timestamp, c1 int from d1001.v0, c2 float from d1002.v2);
Create OK, 0 row(s) affected (0.000869s)

taos> select * from v1;
           ts            |     c1      |          c2          |
===============================================================
 2025-04-16 15:14:59.910 |           1 |                  1.3 |
 2025-04-16 15:15:10.668 |           2 |                  2.2 |
 2025-04-16 15:15:21.268 |           3 |                  3.3 |
Query OK, 3 row(s) in set (0.002706s)

多值窄表模型存储测试,参考之前验证结果:TDengine不同数据模型下的存储对比验证_tdengine检查表是否存在-CSDN博客

相关推荐
TDengine (老段)10 天前
TDengine 3.3.5.0 新功能——服务端查询内存管控
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
TDengine (老段)10 天前
使用 Telegraf 向 TDengine 写入数据
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
TDengine (老段)12 天前
使用 Prometheus 访问 TDengine ---
大数据·数据库·prometheus·时序数据库·iot·tdengine·涛思数据
TDengine (老段)12 天前
TDengine 与开源可视化编程工具 Node-RED 集成
大数据·物联网·开源·node.js·时序数据库·tdengine·涛思数据
TDengine (老段)13 天前
Kafka 向 TDengine 写入数据
数据库·物联网·kafka·linq·时序数据库·tdengine·涛思数据
TDengine (老段)13 天前
TDengine 集群超能力:超越 InfluxDB 的水平扩展与开源优势
大数据·数据库·开源·时序数据库·iot·tdengine·涛思数据
TDengine (老段)20 天前
TDengine 基础功能——数据写入
大数据·数据库·物联网·oracle·时序数据库·tdengine·涛思数据
TDengine (老段)21 天前
TDengine 快速体验(Docker 镜像方式)
大数据·数据库·物联网·docker·时序数据库·tdengine·涛思数据
TDengine (老段)22 天前
TDengine 快速体验(云服务方式)
大数据·物联网·时序数据库·数据库架构·iot·tdengine·涛思数据
TDengine (老段)23 天前
TDengine 开发指南—— UDF函数
java·大数据·数据库·物联网·数据分析·tdengine·涛思数据