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 500
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
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 )
H
Haojun Liao 已提交
37

S
slguan 已提交
38 39 40 41 42 43 44 45 46 47 48
  $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 . '
H
Haojun Liao 已提交
49
    sql insert into $tb values ( $ts , $c , $c , $c , $c , $c , $c , true, $binary , $nchar ) $tb1 values ( $ts , NULL , $c , NULL , $c , NULL , $c , NULL, NULL , $nchar )
S
slguan 已提交
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
    $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 已提交
92

H
Haojun Liao 已提交
93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110
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 已提交
111
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 已提交
112 113 114 115
if $rows != 1 then
  return -1
endi

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

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

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

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

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

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

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

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