提交 d8c46d4b 编写于 作者: S shenglian zhou

add mavg test cases

上级 15f49e7c
system sh/stop_dnodes.sh
system sh/deploy.sh -n dnode1 -i 1
system sh/cfg.sh -n dnode1 -c walLevel -v 1
system sh/exec.sh -n dnode1 -s start
sleep 200
sql connect
$dbPrefix = m_di_db
$tbPrefix = m_di_tb
$mtPrefix = m_di_mt
$tbNum = 10
$rowNum = 20
$totalNum = 200
print =============== step1
$i = 0
$db = $dbPrefix . $i
$mt = $mtPrefix . $i
sql drop database $db -x step1
step1:
sql create database $db
sql use $db
sql create table $mt (ts timestamp, tbcol int) TAGS(tgcol int)
$i = 0
while $i < $tbNum
$tb = $tbPrefix . $i
sql create table $tb using $mt tags( $i )
$x = 0
while $x < $rowNum
$cc = $x * 60000
$ms = 1601481600000 + $cc
sql insert into $tb values ($ms , $x )
$x = $x + 1
endw
$i = $i + 1
endw
sleep 100
print =============== step2
$i = 1
$tb = $tbPrefix . $i
sql select mavg(tbcol,2) from $tb
print ===> $data11
if $data11 != 1.500000000 then
return -1
endi
print =============== step3
$cc = 4 * 60000
$ms = 1601481600000 + $cc
sql select mavg(tbcol,2) from $tb where ts > $ms
print ===> $data11
if $data11 != 6.500000000 then
return -1
endi
$cc = 4 * 60000
$ms = 1601481600000 + $cc
sql select mavg(tbcol,2) from $tb where ts <= $ms
print ===> $data11
if $data11 != 1.500000000 then
return -1
endi
print =============== step4
sql select mavg(tbcol,2) as b from $tb
print ===> $data11
if $data11 != 1.500000000 then
return -1
endi
print =============== step5
sql select mavg(tbcol, 2) as b from $tb interval(1m) -x step5
return -1
step5:
print =============== step6
$cc = 4 * 60000
$ms = 1601481600000 + $cc
sql select mavg(tbcol, 2) as b from $tb where ts <= $ms interval(1m) -x step6
return -1
step6:
print =============== clear
sql drop database $db
sql show databases
if $rows != 0 then
return -1
endi
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/stop_dnodes.sh
system sh/deploy.sh -n dnode1 -i 1
system sh/cfg.sh -n dnode1 -c walLevel -v 1
system sh/exec.sh -n dnode1 -s start
sleep 200
sql connect
$dbPrefix = m_di_db
$tbPrefix = m_di_tb
$mtPrefix = m_di_mt
$tbNum = 2
$rowNum = 10000
$totalNum = 20000
print =============== step1
$i = 0
$db = $dbPrefix . $i
$mt = $mtPrefix . $i
sql drop database $db -x step1
step1:
sql create database $db
sql use $db
sql create table $mt (ts timestamp, c1 int, c2 float, c3 bigint, c4 smallint, c5 tinyint, c6 double, c7 bool, c8 nchar(5), c9 binary(10)) TAGS(tgcol int)
$i = 0
while $i < $tbNum
$tb = $tbPrefix . $i
sql create table $tb using $mt tags( $i )
$x = 0
while $x < $rowNum
$cc = $x * 60000
$ms = 1601481600000 + $cc
$tinyint = $x / 128
sql insert into $tb values ($ms , $x , $x , $x , $x , $tinyint , $x , $x , $x , $x )
$x = $x + 1
endw
$i = $i + 1
endw
sleep 100
print =============== step2
$i = 1
$tb = $tbPrefix . $i
sql select mavg(c1, 2) from $tb
print ===> $data11
if $data11 != 1.500000000 then
return -1
endi
sql select mavg(c2, 2) from $tb
print ===> $data11
if $data11 != 1.500000000 then
return -1
endi
sql select mavg(c3, 2) from $tb
print ===> $data11
if $data11 != 1.500000000 then
return -1
endi
sql select mavg(c4, 2) from $tb
print ===> $data11
if $data11 != 1.500000000 then
return -1
endi
sql select mavg(c5, 2) from $tb
print ===> $data11
if $data11 != 0.000000000 then
return -1
endi
sql select mavg(c6, 2) from $tb
print ===> $data11
if $data11 != 1.500000000 then
return -1
endi
sql_error select mavg(c7,2) from $tb
sql_error select mavg(c8,2) from $tb
sql_error select mavg(c9,2) from $tb
sql_error select mavg(ts,2) from $tb
sql_error select mavg(c1,2), mavg(c2,2) from $tb
#sql_error select 2+mavg(c1,2) from $tb
sql_error select mavg(c1+2) from $tb
sql_error select mavg(c1,2) from $tb where ts > 0 and ts < now + 100m interval(10m)
sql_error select mavg(c1,2) from $mt
sql_error select mavg(mavg(c1,2)) from $tb
sql_error select mavg(c1,2) from m_di_tb1 where c2 like '2%'
print =============== step3
sql select mavg(c1,2) from $tb where c1 > 5
print ===> $data11
if $data11 != 7.500000000 then
return -1
endi
sql select mavg(c2,2) from $tb where c2 > 5
print ===> $data11
if $data11 != 7.500000000 then
return -1
endi
sql select mavg(c3,2) from $tb where c3 > 5
print ===> $data11
if $data11 != 7.500000000 then
return -1
endi
sql select mavg(c4,2) from $tb where c4 > 5
print ===> $data11
if $data11 != 7.500000000 then
return -1
endi
sql select mavg(c5,2) from $tb where c5 > 5
print ===> $data11
if $data11 != 6.000000000 then
return -1
endi
sql select mavg(c6,2) from $tb where c6 > 5
print ===> $data11
if $data11 != 7.500000000 then
return -1
endi
print =============== step4
sql select mavg(c1,2) from $tb where c1 > 5 and c2 < $rowNum
print ===> $data11
if $data11 != 7.500000000 then
return -1
endi
sql select mavg(c1,2) from $tb where c9 like '%9' and c1 <= 20
if $rows != 1 then
return -1
endi
print ===> $data01
if $data01 != 14.000000000 then
return -1
endi
print =============== step5
sql select mavg(c1,2) as b from $tb interval(1m) -x step5
return -1
step5:
print =============== step6
sql select mavg(c1,2) as b from $tb where ts < now + 4m interval(1m) -x step6
return -1
step6:
print =============== clear
#sql drop database $db
#sql show databases
#if $rows != 0 then
# return -1
#endi
system sh/exec.sh -n dnode1 -s stop -x SIGINT
......@@ -127,6 +127,7 @@ sql_error select top(c1, 2) - last(c1) from $stb;
sql_error select sample(c1, 2) - last(c1) from $stb;
sql_error select stddev(c1) - last(c1) from $stb;
sql_error select diff(c1) - last(c1) from $stb;
sql_error select mavg(c1, 2) - last(c1) from $stb;
sql_error select csum(c1) - last(c1) from $stb;
sql_error select first(c7) - last(c7) from $stb;
sql_error select first(c8) - last(c8) from $stb;
......
......@@ -1087,6 +1087,10 @@ sql select diff(val) from (select derivative(k, 1s, 0) val from t1);
if $rows != 0 then
return -1
endi
sql select mavg(val,2) from (select derivative(k, 1s, 0) val from t1);
if $rows != 0 then
return -1
endi
sql select csum(val) from (select derivative(k, 1s, 0) val from t1);
if $rows != 0 then
return -1
......
......@@ -1160,6 +1160,12 @@ sql_error select avg(f1),diff(f1) from st2 group by f1 having avg(f1) > 0;
sql_error select avg(f1),diff(f1) from st2 group by f1 having spread(f2) > 0;
sql_error select avg(f1) from st2 group by f1 having mavg(f1, 2) > 0;
sql_error select avg(f1),mavg(f1, 3) from st2 group by f1 having avg(f1) > 0;
sql_error select avg(f1),mavg(f1, 4) from st2 group by f1 having spread(f2) > 0;
sql_error select avg(f1) from st2 group by f1 having csum(f1) > 0;
sql_error select avg(f1),csum(f1) from st2 group by f1 having avg(f1) > 0;
......
......@@ -1177,6 +1177,14 @@ sql_error select avg(f1),diff(f1) from tb1 group by f1 having avg(f1) > 0;
sql_error select avg(f1),diff(f1) from tb1 group by f1 having spread(f2) > 0;
sql_error select avg(f1) from tb1 group by f1 having mavg(f1,4) > 0;
sql_error select avg(f1),mavg(f1,5) from tb1 group by f1 having avg(f1) > 0;
sql_error select avg(f1),mavg(f1,6) from tb1 group by f1 having spread(f2) > 0;
sql_error select avg(f1) from tb1 group by f1 having csum(f1) > 0;
sql_error select avg(f1),csum(f1) from tb1 group by f1 having avg(f1) > 0;
......
......@@ -471,6 +471,50 @@ if $data81 != -9 then
return -1
endi
sql select mavg(c1,2) from $tb
$res = $rowNum - 1
if $rows != $res then
return -1
endi
sql select mavg(c1,2) from $tb where c1 > 5 limit 2 offset 1
print $rows , $data00 , $data01 , $data10 , $data11
if $rows != 2 then
return -1
endi
if $data00 != @18-09-17 10:20:00.000@ then
return -1
endi
if $data01 != 7.500000000 then
return -1
endi
if $data10 != @18-09-17 10:30:00.000@ then
return -1
endi
if $data11 != 8.500000000 then
return -1
endi
$limit = $rowNum / 2
$offset = $limit - 1
sql select mavg(c1,2) from $tb where c1 >= 0 limit $limit offset $offset
if $rows != $limit then
return -1
endi
$limit = $rowNum / 2
$offset = $limit + 1
$val = $limit - 2
sql select mavg(c1,2) from $tb where c1 >= 0 limit $limit offset $offset
print $rows , $data01 , $data81
if $rows != $val then
return -1
endi
if $data01 != 1.500000000 then
return -1
endi
if $data81 != 4.500000000 then
return -1
endi
sql select csum(c1) from $tb
$res = $rowNum
if $rows != $res then
......
......@@ -478,6 +478,18 @@ if $data11 != 1 then
return -1
endi
sql select mavg(c1,3) from $tb where c1 > 5 limit 2 offset 1
print $rows , $data00 , $data01
if $rows != 1 then
return -1
endi
if $data00 != @18-09-17 10:30:00.000@ then
return -1
endi
if $data01 != 8.000000000 then
return -1
endi
sql select csum(c1) from $tb where c1 > 5 limit 2 offset 1
if $rows != 2 then
return -1
......
......@@ -186,6 +186,7 @@ sql_error select derivative(val, 1s, 0) from (select c1 val from nest_tb0);
sql_error select twa(c1) from (select c1 from nest_tb0);
sql_error select irate(c1) from (select c1 from nest_tb0);
sql_error select diff(c1), twa(c1) from (select * from nest_tb0);
sql_error select mavg(c1,2), twa(c1) from (select * from nest_tb0);
sql_error select csum(c1), twa(c1) from (select * from nest_tb0);
sql_error select irate(c1), interp(c1), twa(c1) from (select * from nest_tb0);
......@@ -274,6 +275,10 @@ sql select diff(c1) from (select * from nest_tb0);
if $rows != 9999 then
return -1
endi
sql select mavg(c1,2) from (select * from nest_tb0);
if $rows != 9999 then
return -1
endi
sql select csum(c1) from (select * from nest_tb0);
if $rows != 10000 then
return -1
......@@ -427,6 +432,18 @@ if $data01 != 1 then
return -1
endi
sql select mavg(val, 2) from (select c1 val from nest_tb0);
if $rows != 9999 then
return -1
endi
if $data00 != @70-01-01 08:00:00.000@ then
return -1
endi
if $data01 != 0.500000000 then
return -1
endi
sql select csum(val) from (select c1 val from nest_tb0);
if $rows != 10000 then
return -1
......
......@@ -394,6 +394,25 @@ if $data21 != -1 then
return -1
endi
sql select mavg(k,3) from tm0
print ====> $rows , $data21
if $row != 2 then
return -1
endi
if $data11 != 2.333333333 then
return -1
endi
sql select csum(k) from tm0
print ====> $rows , $data21
if $row != 4 then
return -1
endi
if $data21 != 6 then
return -1
endi
#error sql
sql_error select * from 1;
#sql_error select 1; // equals to select server_status();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册