col_arithmetic_operation.sim 3.1 KB
Newer Older
S
slguan 已提交
1
system sh/stop_dnodes.sh
S
slguan 已提交
2 3

system sh/deploy.sh -n dnode1 -i 1
H
hjxilinx 已提交
4
system sh/cfg.sh -n dnode1 -c walLevel -v 0
S
slguan 已提交
5
system sh/exec.sh -n dnode1 -s start
H
Haojun Liao 已提交
6
sleep 1000
S
slguan 已提交
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
sql connect

$dbPrefix = ca_db
$tbPrefix = ca_tb
$stbPrefix = ca_stb
$tbNum = 10
$rowNum = 10000
$totalNum = $tbNum * $rowNum
$ts0 = 1537146000000
$delta = 600000
print ========== col_arithmetic_operation.sim
$i = 0
$db = $dbPrefix . $i
$stb = $stbPrefix . $i

sql drop database $db -x step1
step1:
sql create database $db
sql use $db
sql create table $stb (ts timestamp, c1 int, c2 bigint, c3 float, c4 double, c5 smallint, c6 tinyint, c7 bool, c8 binary(10), c9 nchar(10)) tags(t1 int)

$i = 0
$ts = $ts0
$halfTbNum = $tbNum / 2
while $i < $halfTbNum
  $tbId = $i + $halfTbNum
  $tb = $tbPrefix . $i
  $tb1 = $tbPrefix . $tbId
  sql create table $tb using $stb tags( $i )
  sql create table $tb1 using $stb tags( $tbId )
  
  $x = 0
  while $x < $rowNum
    $xs = $x * $delta
    $ts = $ts0 + $xs
    $c = $x / 10
    $c = $c * 10
    $c = $x - $c
    $binary = 'binary . $c
    $binary = $binary . '
    $nchar = 'nchar . $c
    $nchar = $nchar . '
    sql insert into $tb values ( $ts , $c , $c , $c , $c , $c , $c , true, $binary , $nchar ) 
    sql insert into $tb1 values ( $ts , NULL , $c , NULL , $c , NULL , $c , NULL, NULL , $nchar ) 
    $x = $x + 1
  endw 
  $i = $i + 1
endw 

##### select from table
$tb = $tbPrefix . 0
## TBASE-344
sql select c1*2 from $tb
if $rows != $rowNum then
  return -1
endi
if $data00 != 0.000000000 then
  return -1
endi
if $data10 != 2.000000000 then
  return -1
endi
if $data20 != 4.000000000 then
  return -1
endi
if $data90 != 18.000000000 then
  return -1
endi

sql select c4*1+1/2 from $tb
if $rows != $rowNum then
  return -1
endi
if $data00 != 0.500000000 then
  return -1
endi
if $data10 != 1.500000000 then
  return -1
endi
if $data90 != 9.500000000 then
  return -1
endi

#### illegal operations
sql_error select max(c2*2) from $tb
sql_error select max(c1-c2) from $tb
S
scripts  
Shengliang Guan 已提交
93

H
Haojun Liao 已提交
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
print =====================> td-1764
sql select sum(c1)/count(*), sum(c1) as b, count(*) as b from $stb interval(1y)
if $rows != 1 then
  return -1
endi

if $data00 != @18-01-01 00:00:00.000@ then
  return -1
endi

if $data01 != 2.250000000 then
  return -1
endi

if $data02 != 225000 then
  return -1
endi

H
Haojun Liao 已提交
112
sql select first(c1) - last(c1), first(c1) as b, last(c1) as b, min(c1) - max(c1), spread(c1) from ca_stb0 interval(1y)
H
Haojun Liao 已提交
113 114 115 116
if $rows != 1 then
  return -1
endi

H
Haojun Liao 已提交
117
if $data00 != @18-01-01 00:00:00.000@ then
H
Haojun Liao 已提交
118 119 120
  return -1
endi

H
Haojun Liao 已提交
121
if $data01 != -9.000000000 then
H
Haojun Liao 已提交
122 123 124
  return -1
endi

H
Haojun Liao 已提交
125
if $data02 != 0 then
H
Haojun Liao 已提交
126 127 128
  return -1
endi

H
Haojun Liao 已提交
129
if $data03 != 9 then
H
Haojun Liao 已提交
130 131 132
  return -1
endi

H
Haojun Liao 已提交
133
if $data04 != -9.000000000 then
H
Haojun Liao 已提交
134 135 136
  return -1
endi

H
Haojun Liao 已提交
137
if $data05 != 9.000000000 then
H
Haojun Liao 已提交
138 139 140
  return -1
endi

H
Haojun Liao 已提交
141
sql_error select first(c1, c2) - last(c1, c2) from stb interval(1y)
H
Haojun Liao 已提交
142
sql_error select first(ts) - last(ts) from stb interval(1y)
H
Haojun Liao 已提交
143 144 145 146 147 148
sql_error select top(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 first(c7) - last(c7) from stb;
sql_error select first(c8) - last(c8) from stb;
sql_error select first(c9) - last(c9) from stb;
H
Haojun Liao 已提交
149

S
scripts  
Shengliang Guan 已提交
150
system sh/exec.sh -n dnode1 -s stop -x SIGINT