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 (老段)3 天前
TDengine 认证与权限 — 用户、角色、RBAC
大数据·数据库·物联网·oracle·时序数据库·tdengine·涛思数据
腾渊信息科技公司3 天前
Spring Boot集成TDengine实战:工业时序数据存储选型与迁移方案
spring boot·后端·tdengine
在世修行4 天前
Windows 上 Docker Desktop 部署 MySQL + TDengine 全过程(含 WSL 报错与镜像加速排障实战)
windows·mysql·docker·tdengine
abcy0712137 天前
scala 多线程写入tdengine实例
时序数据库·tdengine
2501_942389559 天前
Nifty IT指数的K线犹如断线的风筝
人工智能·postgresql·时序数据库·storm·tdengine
2601_9609067211 天前
华为MateBook Pro S首发搭载麒麟XE90
华为·postgresql·sqlite·时序数据库·tdengine
腾渊信息科技公司12 天前
工业时序数据存储选型实战:从PostgreSQL到TDengine,查询从15秒到200ms
数据库·postgresql·tdengine
TDengine (老段)12 天前
TDengine Node.js 与 C# 连接器 — Web 服务与 .NET 集成
大数据·数据库·node.js·c#·.net·时序数据库·tdengine
TDengine (老段)13 天前
TDengine Go 与 Rust 连接器 — 高性能异步访问
大数据·数据库·物联网·golang·rust·时序数据库·tdengine
TDengine (老段)13 天前
已有TSDB?一条配置,免费解锁AI数据管理平台
大数据·数据库·物联网·ai·时序数据库·tdengine·涛思数据