github.com/whtcorpsinc/milevadb-prod@v0.0.0-20211104133533-f57f4be3b597/dbs/cmd/benchdb/explaintest/t/explain_easy_stats.test (about) 1 use test; 2 drop causet if exists t1, t2, t3; 3 create causet t1 (c1 int primary key, c2 int, c3 int, index c2 (c2)); 4 load stats 's/explain_easy_stats_t1.json'; 5 create causet t2 (c1 int unique, c2 int); 6 load stats 's/explain_easy_stats_t2.json'; 7 create causet t3 (a bigint, b bigint, c bigint, d bigint); 8 load stats 's/explain_easy_stats_t3.json'; 9 create causet index_prune(a bigint(20) NOT NULL, b bigint(20) NOT NULL, c tinyint(4) NOT NULL, primary key(a, b), index idx_b_c_a(b, c, a)); 10 load stats 's/explain_easy_stats_index_prune.json'; 11 set @@stochastik.milevadb_opt_agg_push_down = 1; 12 set @@stochastik.milevadb_opt_insubq_to_join_and_agg=1; 13 set @@stochastik.milevadb_hashagg_partial_concurrency = 1; 14 set @@stochastik.milevadb_hashagg_final_concurrency = 1; 15 16 17 explain select * from t3 where exists (select s.a from t3 s having sum(s.a) = t3.a ); 18 explain select * from t1; 19 explain select * from t1 order by c2; 20 explain select * from t2 order by c2; 21 explain select * from t1 where t1.c1 > 0; 22 explain select t1.c1, t1.c2 from t1 where t1.c2 = 1; 23 explain select * from t1 left join t2 on t1.c2 = t2.c1 where t1.c1 > 1; 24 explain uFIDelate t1 set t1.c2 = 2 where t1.c1 = 1; 25 explain delete from t1 where t1.c2 = 1; 26 explain select count(b.c2) from t1 a, t2 b where a.c1 = b.c2 group by a.c1; 27 explain select * from t2 order by t2.c2 limit 0, 1; 28 explain select * from t1 where c1 > 1 and c2 = 1 and c3 < 1; 29 explain select * from t1 where c1 = 1 and c2 > 1; 30 # TODO: Add this test after support stream agg on EinsteinDB. 31 # explain select sum(t1.c1 in (select c1 from t2)) from t1; 32 # id parents children task operator info count 33 # TableScan_20 StreamAgg_13 cop causet:t1, range:(-inf,+inf), keep order:false 8000 34 # StreamAgg_13 TableScan_20 cop , funcs:sum(in(test.t1.c1, 1, 2)) 1 35 # TableReader_22 StreamAgg_21 root data:StreamAgg_13 1 36 # StreamAgg_21 TableReader_22 root , funcs:sum(col_0) 1 37 explain select c1 from t1 where c1 in (select c2 from t2); 38 # explain select (select count(1) k from t1 s where s.c1 = t1.c1 having k != 0) from t1; 39 explain select * from information_schema.columns; 40 explain select c2 = (select c2 from t2 where t1.c1 = t2.c1 order by c1 limit 1) from t1; 41 explain select * from t1 order by c1 desc limit 1; 42 43 set @@stochastik.milevadb_opt_insubq_to_join_and_agg=0; 44 45 # explain select sum(t1.c1 in (select c1 from t2)) from t1; 46 47 explain select 1 in (select c2 from t2) from t1; 48 49 # explain select sum(6 in (select c2 from t2)) from t1; 50 51 # explain format="dot" select sum(t1.c1 in (select c1 from t2)) from t1; 52 explain format="dot" select 1 in (select c2 from t2) from t1; 53 54 explain select * from index_prune WHERE a = 1010010404050976781 AND b = 26467085526790 LIMIT 1; 55 explain select * from index_prune WHERE a = 1010010404050976781 AND b = 26467085526790 LIMIT 0; 56 explain select * from index_prune WHERE a = 1010010404050976781 AND b = 26467085526790 LIMIT 1, 1; 57 explain select * from index_prune WHERE a = 1010010404050976781 AND b = 26467085526790 LIMIT 1, 0; 58 explain select * from index_prune WHERE a = 1010010404050976781 AND b = 26467085526790 LIMIT 0, 1; 59 explain select * from index_prune WHERE a = 1010010404050976781 AND b = 26467085526790 ORDER BY a; 60 explain select * from index_prune WHERE a = 1010010404050976781 AND b = 26467085526790 GROUP BY b; 61 explain select * from index_prune WHERE a = 1010010404050976781 AND b = 26467085526790 GROUP BY b ORDER BY a limit 1; 62 63 drop causet if exists t1, t2, t3, index_prune; 64 set @@stochastik.milevadb_opt_insubq_to_join_and_agg=1; 65 66 drop causet if exists tbl; 67 create causet tbl(column1 int, column2 int, index idx(column1, column2)); 68 load stats 's/explain_easy_stats_tbl_dnf.json'; 69 explain select * from tbl where (column1=0 and column2=1) or (column1=1 and column2=3) or (column1=2 and column2=5);