TDengine SQL手册—删除数据

功能说明

删除数据是 TDengine 提供的根据指定时间段删除指定表或超级表中数据记录的功能,方便用户清理由于设备故障等原因产生的异常数据。

  • 被删除的数据为永久删除,不可恢复,请谨慎操作,建议在删除前进行数据备份。

  • 建议删除前先确认要删除数据,可以把 delete from 更换为 select * from ,后面条件不变,确认完是要删除的数据再执行删除操作。

  • 删除数据并不会立即释放该表所占用的磁盘空间,而是把该表的数据标记为已删除,在查询时这些数据将不会再出现,但释放磁盘空间会延迟到系统自动清理(建库参数 keep 生效)或用户手动进行数据重整时(企业版功能 compact)。

SQL 语法

DELETE FROM [ db_name. ] tb_name [WHERE condition];

功能: 删除指定表或超级表中的数据记录

参数:

  • db_name : 可选参数,指定要删除表所在的数据库名,不填写则在当前数据库中
  • tb_name : 必填参数,指定要删除数据的表名,可以是普通表、子表,也可以是超级表。
  • condition: 可选参数,指定删除数据的过滤条件,不指定过滤条件则为表中所有数据,请慎重使用。特别说明,这里的 where 条件中只支持对第一列时间列的过滤及标签列的过滤,不支持普通列的过滤。

特别说明:

数据删除后不可恢复,请慎重使用。为了确保删除的数据确实是自己要删除的,建议可以先使用 select 语句加 where 后的删除条件查看要删除的数据内容,确认无误后再执行 delete 命令。

示例

meters 是一个超级表,groupid 是 int 类型的 tag 列,现在要删除 meters 表中时间小于 2021-10-01 10:40:00.100 的所有数据,sql 如下:

delete from meters where ts < '2021-10-01 10:40:00.100' ;

执行后显示结果为:

Deleted 102000 row(s) from 1020 table(s) (0.421950s)

表示从 1020 个子表中共删除了 102000 行数据

访问官网

更多内容欢迎访问 TDengine 官网

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TDengine (老段)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值