tdSql.execute("create table st (ts timestamp, num int, value int , t_instance int) tags (loc nchar(30))")
node=5
number=10
forninrange(node):
forminrange(number):
dt=m*300000+n*60000# collecting'frequency is 10s
args1=(n,n,self.ts1+dt,n,100+2*m+2*n,10+m+n)
# args2=(n,self.ts2+dt,n,120+n,15+n)
tdSql.execute("insert into t%d using st tags('beijing%d') values(%d, %d, %d, %d)"%args1)
# tdSql.execute("insert into t1 using st tags('shanghai') values(%d, %d, %d, %d)" % args2)
# interval function
tdSql.query("select avg(value) from st interval(10m)")
# print(tdSql.queryResult)
tdSql.checkRows(6)
tdSql.checkData(0,0,"2020-07-01 04:20:00")
tdSql.checkData(1,1,107.4)
# subquery with interval
tdSql.query("select avg(avg_val) from(select avg(value) as avg_val from st where loc='beijing0' interval(10m));")
tdSql.checkData(0,0,109.0)
# subquery with interval and select two Column in parent query
tdSql.error("select ts,avg(avg_val) from(select avg(value) as avg_val from st where loc='beijing0' interval(10m));")
# subquery with interval and sliding
tdSql.query("select avg(value) as avg_val from st where loc='beijing0' interval(8m) sliding(30s) limit 1;")
tdSql.checkData(0,0,"2020-07-01 04:17:00")
tdSql.checkData(0,1,100)
tdSql.query("select avg(avg_val) from(select avg(value) as avg_val from st where loc='beijing1' interval(8m) sliding(30s));")
tdSql.checkData(0,0,111)
# subquery with interval and offset
tdSql.query("select avg(value) as avg_val from st where loc='beijing0' interval(5m,1m);")
tdSql.checkData(0,0,"2020-07-01 04:21:00")
tdSql.checkData(0,1,100)
tdSql.query("select avg(avg_val) from(select avg(value) as avg_val from st where loc='beijing0' interval(5m,1m) group by loc);")
tdSql.checkData(0,0,109)
# subquery with interval,sliding and group by ; parent query with interval
tdSql.query("select avg(value) as avg_val from st where loc='beijing0' interval(8m) sliding(1m) group by loc limit 1 offset 52 ;")
tdSql.checkData(0,0,"2020-07-01 05:09:00")
tdSql.checkData(0,1,118)
tdSql.query("select avg(avg_val) as ncst from(select avg(value) as avg_val from st where loc!='beijing0' interval(8m) sliding(1m) group by loc ) interval(5m);")
tdSql.checkData(1,1,105)
# # subquery and parent query with interval and sliding
tdSql.query("select avg(avg_val) from(select avg(value) as avg_val from st where loc='beijing1' interval(8m) sliding(5m)) interval(10m) sliding(2m);")
tdSql.checkData(29,0,"2020-07-01 05:10:00.000")
# subquery and parent query with top and bottom
tdSql.query("select top(avg_val,2) from(select avg(value) as avg_val,num from st where loc!='beijing0' group by num) order by avg_val desc;")
tdSql.checkData(0,1,117)
tdSql.query("select bottom(avg_val,3) from(select avg(value) as avg_val,num from st where loc!='beijing0' group by num) order by avg_val asc;")
tdSql.checkData(0,1,111)
#
tdSql.query("select top(avg_val,2) from(select avg(value) as avg_val from st where loc='beijing1' interval(8m) sliding(3m));")
tdSql.execute("insert into dev_002 (ts,t1) values(%d, %d,)"%(self.ts+i,i+1))
tdSql.query("select count(ts) from dev_001 state_window(t1)")
tdSql.checkRows(3)
tdSql.checkData(0,0,2)
tdSql.query("select count(ts) from dev_001 state_window(t3)")
tdSql.checkRows(2)
tdSql.checkData(1,0,2)
tdSql.query("select count(ts) from dev_001 state_window(t7)")
tdSql.checkRows(3)
tdSql.checkData(1,0,1)
tdSql.query("select count(ts) from dev_001 state_window(t8)")
tdSql.checkRows(3)
tdSql.checkData(2,0,1)
tdSql.query("select count(ts) from dev_001 state_window(t11)")
tdSql.checkRows(2)
tdSql.checkData(0,0,3)
tdSql.query("select count(ts) from dev_001 state_window(t12)")
tdSql.checkRows(2)
tdSql.checkData(1,0,1)
tdSql.query("select count(ts) from dev_001 state_window(t13)")
tdSql.checkRows(2)
tdSql.checkData(1,0,1)
tdSql.query("select count(ts) from dev_001 state_window(t14)")
tdSql.checkRows(3)
tdSql.checkData(1,0,2)
tdSql.query("select count(ts) from dev_002 state_window(t1)")
tdSql.checkRows(100000)
# with all aggregate function
tdSql.query("select count(*),sum(t1),avg(t1),twa(t1),stddev(t15),leastsquares(t15,1,1),first(t15),last(t15),spread(t15),percentile(t15,90),t9 from dev_001 state_window(t9);")
tdSql.checkRows(3)
tdSql.checkData(0,0,2)
tdSql.checkData(1,1,10)
tdSql.checkData(0,2,1)
# tdSql.checkData(0, 3, 1)
tdSql.checkData(0,4,np.std([1,5]))
# tdSql.checkData(0, 5, 1)
tdSql.checkData(0,6,1)
tdSql.checkData(0,7,5)
tdSql.checkData(0,8,4)
tdSql.checkData(0,9,4.6)
tdSql.checkData(0,10,'True')
# with where
tdSql.query("select avg(t15),t9 from dev_001 where t9='true' state_window(t9);")
tdSql.checkData(0,0,7)
tdSql.checkData(0,1,'True')
# error
tdSql.error("select count(*) from dev_001 state_window(t2)")
tdSql.error("select count(*) from st state_window(t3)")
tdSql.error("select count(*) from dev_001 state_window(t4)")
tdSql.error("select count(*) from dev_001 state_window(t5)")
tdSql.error("select count(*) from dev_001 state_window(t6)")
tdSql.error("select count(*) from dev_001 state_window(t10)")
tdSql.error("select count(*) from dev_001 state_window(tag2)")