avg.sim 2.8 KB
Newer Older
S
slguan 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151
sql connect
sleep 3000

$dbPrefix = m_av_db
$tbPrefix = m_av_tb
$mtPrefix = m_av_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
    $ms = $x . m 
    sql insert into $tb values (now + $ms , $x ) 
    $x = $x + 1
  endw 
 
  $i = $i + 1
endw 

sleep 100

print =============== step2
$i = 1
$tb = $tbPrefix . $i

sql select avg(tbcol) from $tb
print ===> $data00
if $data00 != 9.500000000 then 
  return -1
endi

print =============== step3
sql select avg(tbcol) from $tb where ts < now + 4m
print ===> $data00
if $data00 != 2.000000000 then 
  return -1
endi

print =============== step4
sql select avg(tbcol) as b from $tb
print ===> $data00
if $data00 != 9.500000000 then 
  return -1
endi

print =============== step5
sql select avg(tbcol) as b from $tb interval(1m)
print ===> $data01
if $data11 != 1.000000000 then 
  return -1
endi

sql select avg(tbcol) as b from $tb interval(1d)
print ===> $data01
if $data01 != 9.500000000 then 
  return -1
endi

print =============== step6
sql select avg(tbcol) as b from $tb where ts < now + 4m interval(1m)
print ===> $data01
if $data41 != 4.000000000 then 
  return -1
endi
if $rows != 5 then 
  return -1
endi

print =============== step7
sql select avg(tbcol) from $mt
print ===> $data00
if $data00 != 9.500000000 then 
  return -1
endi

print =============== step8
sql select avg(tbcol) as c from $mt where ts < now + 4m
print ===> $data00
if $data00 != 2.000000000 then 
  return -1
endi

sql select avg(tbcol) as c from $mt where tgcol < 5
print ===> $data00
if $data00 != 9.500000000 then 
  return -1
endi

sql select avg(tbcol) as c from $mt where tgcol < 5 and ts < now + 4m
print ===> $data00
if $data00 != 2.000000000 then 
  return -1
endi

print =============== step9
sql select avg(tbcol) as b from $mt interval(1m)
print ===> $data11
if $data11 != 1.000000000 then 
  return -1
endi

sql select avg(tbcol) as b from $mt interval(1d)
print ===> $data01
if $data01 != 9.500000000 then 
  return -1
endi

print =============== step10
sql select avg(tbcol) as b from $mt group by tgcol
print ===> $data00
if $data00 != 9.500000000 then 
  return -1
endi

if $rows != $tbNum then 
  return -1
endi

print =============== step11
sql select avg(tbcol) as b from $mt  where ts < now + 4m interval(1m) group by tgcol
print ===> $data11
if $data11 != 1.000000000 then 
  return -1
endi
if $rows != 50 then 
  return -1
endi

print =============== clear
sql drop database $db
sql show databases
if $rows != 0 then 
  return -1
endi