# # EXPLAIN FORMAT=JSON tests. These are tests developed for MariaDB. # --disable_warnings drop table if exists t0,t1; --enable_warnings create table t0(a int); insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); explain format=json select * from t0; explain format=json select * from t0 where 1>2; explain format=json select * from t0 where a<3; --echo # Try a basic join create table t1 (a int, b int, filler char(32), key(a)); insert into t1 select a.a + b.a* 10 + c.a * 100, a.a + b.a* 10 + c.a * 100, 'filler' from t0 a, t0 b, t0 c; explain format=json select * from t0,t1 where t1.a=t0.a; --echo # Try range and index_merge create table t2 (a1 int, a2 int, b1 int, b2 int, key(a1,a2), key(b1,b2)); insert into t2 select a,a,a,a from t1; explain format=json select * from t2 where a1<5; explain format=json select * from t2 where a1=1 or b1=2; explain format=json select * from t2 where a1=1 or (b1=2 and b2=3); --echo # Try ref access on two key components explain format=json select * from t0,t2 where t2.b1=t0.a and t2.b2=4; drop table t1; drop table t0;