环境介绍
tdengine 3.2.2.0
我的超级表
CREATE TABLE iot.attr_value (
create_time TIMESTAMP NOT NULL,
attr NCHAR,
val NCHAR,
raw_val NCHAR,
origin_time TIMESTAMP,
sn NCHAR,
CONSTRAINT create_time PRIMARY KEY (create_time)
);
子表
CREATE TABLE iot.attr_value_dht11_0001 (
create_time TIMESTAMP NOT NULL,
attr NCHAR,
val NCHAR,
raw_val NCHAR,
origin_time TIMESTAMP,
sn NCHAR,
CONSTRAINT create_time PRIMARY KEY (create_time)
);
问题
使用sql进行聚合函数的使用
出现的问题,不能进行聚合函数的使用
- 使用的sql
select attr, avg(val) from iot.attr_value_dht11_0001 partition by attr ;
- 出现的报错:
- 原因:我的表字段,val是字符串类型,而聚合函数只能用在数值类型
- 解决方法:将字符串的数据转换为数值类型
select attr, avg(cast(val as double)) from iot.attr_value_dht11_0001 partition by attr;