2001-06-24 22:11:00 +03:00
|
|
|
#
|
|
|
|
# Only run the test if we are using --big-test, because this test takes a
|
|
|
|
# long time
|
|
|
|
#
|
2001-12-26 16:49:10 +02:00
|
|
|
#-- require r/big_test.require
|
|
|
|
#eval select $BIG_TEST as using_big_test;
|
2001-06-24 22:11:00 +03:00
|
|
|
|
2001-06-11 17:28:26 -06:00
|
|
|
drop table if exists t1,t2,t3;
|
|
|
|
create table t1(id1 int not null auto_increment primary key, t char(12));
|
2001-07-01 13:20:53 +03:00
|
|
|
create table t2(id2 int not null, t char(12));
|
2001-06-11 17:28:26 -06:00
|
|
|
create table t3(id3 int not null, t char(12), index(id3));
|
2001-09-27 23:05:54 -06:00
|
|
|
disable_query_log;
|
2001-12-26 16:49:10 +02:00
|
|
|
let $1 = 100;
|
2001-06-11 17:28:26 -06:00
|
|
|
while ($1)
|
|
|
|
{
|
2001-06-16 13:58:01 +03:00
|
|
|
let $2 = 5;
|
2001-06-11 17:28:26 -06:00
|
|
|
eval insert into t1(t) values ('$1');
|
|
|
|
while ($2)
|
|
|
|
{
|
|
|
|
eval insert into t2(id2,t) values ($1,'$2');
|
2001-06-16 13:58:01 +03:00
|
|
|
let $3 = 10;
|
|
|
|
while ($3)
|
|
|
|
{
|
|
|
|
eval insert into t3(id3,t) values ($1,'$2');
|
|
|
|
dec $3;
|
|
|
|
}
|
2001-06-11 17:28:26 -06:00
|
|
|
dec $2;
|
|
|
|
}
|
|
|
|
dec $1;
|
|
|
|
}
|
2001-09-27 23:05:54 -06:00
|
|
|
enable_query_log;
|
2002-03-15 18:44:44 -07:00
|
|
|
|
|
|
|
select count(*) from t1 where id1 > 95;
|
|
|
|
select count(*) from t2 where id2 > 95;
|
|
|
|
select count(*) from t3 where id3 > 95;
|
|
|
|
|
2001-12-26 16:49:10 +02:00
|
|
|
update t1,t2,t3 set t1.t="aaa", t2.t="bbb", t3.t="cc" where t1.id1 = t2.id2 and t2.id2 = t3.id3 and t1.id1 > 90;
|
2002-03-15 18:44:44 -07:00
|
|
|
select count(*) from t1 where t = "aaa";
|
|
|
|
select count(*) from t1 where id1 > 90;
|
|
|
|
select count(*) from t2 where t = "bbb";
|
|
|
|
select count(*) from t2 where id2 > 90;
|
|
|
|
select count(*) from t3 where t = "cc";
|
|
|
|
select count(*) from t3 where id3 > 90;
|
2001-12-26 16:49:10 +02:00
|
|
|
delete t1.*, t2.*, t3.* from t1,t2,t3 where t1.id1 = t2.id2 and t2.id2 = t3.id3 and t1.id1 > 95;
|
2001-06-16 13:58:01 +03:00
|
|
|
|
|
|
|
check table t1, t2, t3;
|
|
|
|
|
2001-12-26 16:49:10 +02:00
|
|
|
select count(*) from t1 where id1 > 95;
|
|
|
|
select count(*) from t2 where id2 > 95;
|
|
|
|
select count(*) from t3 where id3 > 95;
|
2001-06-16 13:58:01 +03:00
|
|
|
|
2001-12-26 16:49:10 +02:00
|
|
|
delete t1, t2, t3 from t1,t2,t3 where t1.id1 = t2.id2 and t2.id2 = t3.id3 and t1.id1 > 5;
|
|
|
|
select count(*) from t1 where id1 > 5;
|
|
|
|
select count(*) from t2 where id2 > 5;
|
|
|
|
select count(*) from t3 where id3 > 5;
|
2001-06-24 22:11:00 +03:00
|
|
|
|
2001-12-26 16:49:10 +02:00
|
|
|
delete from t1, t2, t3 using t1,t2,t3 where t1.id1 = t2.id2 and t2.id2 = t3.id3 and t1.id1 > 0;
|
2001-06-24 22:11:00 +03:00
|
|
|
|
|
|
|
# These queries will force a scan of the table
|
|
|
|
select count(*) from t1 where id1;
|
|
|
|
select count(*) from t2 where id2;
|
|
|
|
select count(*) from t3 where id3;
|
|
|
|
|
|
|
|
drop table t1,t2,t3;
|