sleep 100 sql connect $dbPrefix = ti_db $tbPrefix = ti_tb $stbPrefix = ti_stb $tbNum = 2000 $rowNum = 10 $totalNum = $tbNum * $rowNum $ts0 = 1537146000000 $delta = 600000 $tsu = $rowNum * $delta $tsu = $tsu - $delta $tsu = $tsu + $ts0 print ========== tbnameIn_query.sim $i = 0 $db = $dbPrefix . $i $stb = $stbPrefix . $i $tb = $tbPrefix . 0 print ====== use db sql use $db #### tbname in + other tag filtering ## [TBASE-362] # tbname in + tag filtering is allowed now!!! sql select count(*) from $stb where tbname in ('ti_tb1', 'ti_tb300') and t1 > 2 # tbname in used on meter sql_error select count(*) from $tb where tbname in ('ti_tb1', 'ti_tb300') ## tbname in + group by tag sql select count(*) from $stb where tbname in ('ti_tb1', 'ti_tb300') group by t1 order by t1 asc if $rows != 2 then return -1 endi if $data00 != $rowNum then return -1 endi if $data01 != 1 then return -1 endi if $data10 != $rowNum then return -1 endi if $data11 != 300 then return -1 endi ## duplicated tbnames sql select count(*) from $stb where tbname in ('ti_tb1', 'ti_tb1', 'ti_tb1', 'ti_tb2', 'ti_tb2', 'ti_tb3') group by t1 order by t1 asc if $rows != 3 then return -1 endi if $data00 != $rowNum then return -1 endi if $data01 != 1 then return -1 endi if $data10 != $rowNum then return -1 endi if $data11 != 2 then return -1 endi if $data20 != $rowNum then return -1 endi if $data21 != 3 then return -1 endi ## wrong tbnames sql select count(*) from $stb where tbname in ('tbname in', 'ti_tb1', 'ti_stb0') group by t1 order by t1 if $rows != 1 then return -1 endi if $data00 != 10 then return -1 endi if $data01 != 1 then return -1 endi ## tbname in + colummn filtering sql select count(*) from $stb where tbname in ('tbname in', 'ti_tb1', 'ti_stb0', 'ti_tb2') and c8 like 'binary%' group by t1 order by t1 asc if $rows != 2 then return -1 endi if $data00 != 10 then return -1 endi if $data01 != 1 then return -1 endi if $data10 != 10 then return -1 endi if $data11 != 2 then return -1 endi # multiple tbname in is not allowed NOW sql_error select count(*) from $stb where tbname in ('ti_tb1', 'ti_tb300') and tbname in ('ti_tb5', 'ti_tb1000') group by t1 order by t1 asc #if $rows != 4 then # return -1 #endi #if $data00 != $rowNum then # return -1 #endi #if $data01 != 1 then # return -1 #endi #if $data10 != $rowNum then # return -1 #endi #if $data11 != 5 then # return -1 #endi #if $data20 != $rowNum then # return -1 #endi #if $data21 != 300 then # return -1 #endi #if $data30 != $rowNum then # return -1 #endi #if $data31 != 1000 then # return -1 #endi #### aggregation on stb with 6 tags + where + group by + limit offset #$val1 = 1 #$val2 = $tbNum - 1 #sql select count(*) from $stb where t1 > $val1 and t1 < $val2 group by t1, t2, t3, t4, t5, t6 order by t1 asc limit 1 offset 0 #$val = $tbNum - 3 #if $rows != $val then # return -1 #endi #if $data00 != $rowNum then # return -1 #endi #if $data01 != 2 then # return -1 #endi #if $data02 != tb2 then # return -1 #endi #if $data03 != tb2 then # return -1 #endi #if $data04 != 2 then # return -1 #endi #if $data05 != 2 then # return -1 #endi # #sql select count(*) from $stb where t2 like '%' and t1 > 2 and t1 < 5 group by t3, t4 order by t3 desc limit 1 offset 0 #if $rows != 2 then # return -1 #endi #if $data00 != $rowNum then # return -1 #endi #if $data01 != tb4 then # return -1 #endi #if $data02 != 4 then # return -1 #endi #if $data11 != tb3 then # return -1 #endi #if $data12 != 3 then # return -1 #endi #sql select count(*) from $stb where t2 like '%' and t1 > 2 and t1 < 5 group by t3, t4 order by t3 desc limit 1 offset 1 #if $rows != 0 then # return -1 #sql_error select count(*) from $stb where t1 like 1 # ###### aggregation on tb + where + fill + limit offset #sql select max(c1) from $tb where ts >= $ts0 and ts <= $tsu interval(5m) fill(value, -1, -2) limit 10 offset 1 #if $rows != 10 then # return -1 #endi #if $data00 != @18-09-17 09:05:00.000@ then # return -1 #endi #if $data01 != -1 then # return -1 #endi #if $data11 != 1 then # return -1 #endi #if $data90 != @18-09-17 09:50:00.000@ then # return -1 #endi #if $data91 != 5 then # return -1 #endi # #$tb5 = $tbPrefix . 5 #sql select max(c1), min(c2) from $tb5 where ts >= $ts0 and ts <= $tsu interval(5m) fill(value, -1, -2, -3, -4) limit 10 offset 1 #if $rows != 10 then # return -1 #endi #if $data00 != @18-09-17 09:05:00.000@ then # return -1 #endi #if $data01 != -1 then # return -1 #endi #if $data02 != -2 then # return -1 #endi #if $data11 != 1 then # return -1 #endi #if $data12 != -2 then # return -1 #endi #if $data90 != @18-09-17 09:50:00.000@ then # return -1 #endi #if $data91 != 5 then # return -1 #endi #if $data92 != -2 then # return -1 #endi # #### [TBASE-350] ### tb + interval + fill(value) + limit offset #$tb = $tbPrefix . 0 #$limit = $rowNum #$offset = $limit / 2 #sql select max(c1), min(c2), sum(c3), avg(c4), stddev(c5), spread(c6), first(c7), last(c8), first(c9) from $tb where ts >= $ts0 and ts <= $tsu interval(5m) fill(value, -1, -2) limit $limit offset $offset #if $rows != $limit then # return -1 #endi #if $data01 != 0 then # return -1 #endi #if $data11 != -1 then # return -1 #endi # ## tb + interval + fill(linear) + limit offset #$limit = $rowNum #$offset = $limit / 2 #sql select max(c1), min(c2), sum(c3), avg(c4), stddev(c5), spread(c6), first(c7), last(c8), first(c9) from $tb where ts >= $ts0 and ts <= $tsu interval(5m) fill(linear) limit $limit offset $offset #if $rows != $limit then # return -1 #endi #if $data01 != 0 then # return -1 #endi #if $data11 != 0 then # return -1 #endi #if $data13 != 0.500000000 then # return -1 #endi #if $data35 != 0.000000000 then # return -1 #endi #if $data46 != 0.000000000 then # return -1 #endi #if $data47 != true then # return -1 #endi #if $data57 != NULL then # return -1 #endi #if $data68 != binary3 then # return -1 #endi #if $data79 != NULL then # return -1 #endi # ### tb + interval + fill(prev) + limit offset #$limit = $rowNum #$offset = $limit / 2 #sql select max(c1), min(c2), sum(c3), avg(c4), stddev(c5), spread(c6), first(c7), last(c8), first(c9) from $tb where ts >= $ts0 and ts <= $tsu interval(5m) fill(prev) limit $limit offset $offset #if $rows != $limit then # return -1 #endi # # #$limit = $rowNum #$offset = $limit / 2 #$offset = $offset + 10 #sql select max(c1), min(c2), sum(c3), avg(c4), stddev(c5), spread(c6), first(c7), last(c8), first(c9) from $tb where ts >= $ts0 and ts <= $tsu and c1 = 5 interval(5m) fill(value, -1, -2) limit $limit offset $offset #if $rows != $limit then # return -1 #endi #if $data01 != 5 then # return -1 #endi #if $data02 != 5 then # return -1 #endi #if $data03 != 5.000000000 then # return -1 #endi #if $data04 != 5.000000000 then # return -1 #endi #if $data05 != 0.000000000 then # return -1 #endi #if $data07 != true then # return -1 #endi #if $data08 != binary5 then # return -1 #endi #if $data09 != nchar5 then # return -1 #endi #if $data18 != NULL then # return -1 #endi #if $data19 != NULL then # return -1 #endi #if $data16 != -2.000000000 then # return -1 #endi #if $data17 != true then # return -1 #endi #if $data11 != -1 then # return -1 #endi # #$limit = $rowNum #$offset = $limit * 2 #$offset = $offset - 11 #sql select max(c1), min(c2), sum(c3), avg(c4), stddev(c5), spread(c6), first(c7), last(c8), first(c9) from $tb where ts >= $ts0 and ts <= $tsu and c1 = 5 interval(5m) fill(value, -1, -2) limit $limit offset $offset #if $rows != 10 then # return -1 #endi #if $data01 != -1 then # return -1 #endi #if $data02 != -2 then # return -1 #endi #if $data11 != 5 then # return -1 #endi #if $data12 != 5 then # return -1 #endi #if $data13 != 5.000000000 then # return -1 #endi #if $data15 != 0.000000000 then # return -1 #endi #if $data16 != 0.000000000 then # return -1 #endi #if $data18 != binary5 then # return -1 #endi #if $data19 != nchar5 then # return -1 #endi #if $data27 != true then # return -1 #endi #if $data38 != NULL then # return -1 #endi #if $data49 != NULL then # return -1 #endi # #### [TBASE-350] ### stb + interval + fill + group by + limit offset #sql select max(c1), min(c2), sum(c3), avg(c4), first(c7), last(c8), first(c9) from $stb where ts >= $ts0 and ts <= $tsu interval(5m) fill(value, -1, -2) group by t1 limit 2 offset 10 #if $rows != 20 then # return -1 #endi # #$limit = 5 #$offset = $rowNum * 2 #$offset = $offset - 2 #sql select max(c1), min(c2), sum(c3), avg(c4), first(c7), last(c8), first(c9) from $stb where ts >= $ts0 and ts <= $tsu interval(5m) fill(value, -1, -2) group by t1 order by t1 limit $limit offset $offset #if $rows != $tbNum then # return -1 #endi #if $data00 != @18-11-25 19:30:00.000@ then # return -1 #endi #if $data01 != 9 then # return -1 #endi #if $data12 != -2 then # return -1 #endi #if $data23 != 9.000000000 then # return -1 #endi #if $data34 != -2.000000000 then # return -1 #endi #if $data45 != true then # return -1 #endi #if $data56 != binary9 then # return -1 #endi #if $data68 != 3 then # return -1 #endi #if $data72 != 9 then # return -1 #endi #if $data84 != 9.000000000 then # return -1 #endi #if $data98 != 0 then # return -1 #endi