2004-12-17 21:13:22 +01:00
-- source include/have_ndb.inc
--disable_warnings
DROP TABLE IF EXISTS t1,t2;
--enable_warnings
#
# Test of condition pushdown to storage engine
#
2005-02-11 22:05:24 +01:00
CREATE TABLE t1 (
auto int(5) unsigned NOT NULL auto_increment,
2005-02-23 15:51:26 +01:00
string char(10),
vstring varchar(10),
bin binary(7),
vbin varbinary(7),
2005-02-11 22:05:24 +01:00
tiny tinyint(4) DEFAULT '0' NOT NULL ,
short smallint(6) DEFAULT '1' NOT NULL ,
medium mediumint(8) DEFAULT '0' NOT NULL,
long_int int(11) DEFAULT '0' NOT NULL,
longlong bigint(13) DEFAULT '0' NOT NULL,
real_float float(13,1) DEFAULT 0.0 NOT NULL,
real_double double(16,4),
2005-02-17 11:16:24 +01:00
real_decimal decimal(16,4),
2005-02-11 22:05:24 +01:00
utiny tinyint(3) unsigned DEFAULT '0' NOT NULL,
ushort smallint(5) unsigned zerofill DEFAULT '00000' NOT NULL,
umedium mediumint(8) unsigned DEFAULT '0' NOT NULL,
ulong int(11) unsigned DEFAULT '0' NOT NULL,
ulonglong bigint(13) unsigned DEFAULT '0' NOT NULL,
bits bit(3),
options enum('zero','one','two','three','four') not null,
flags set('zero','one','two','three','four') not null,
date_field date,
year_field year,
time_field time,
date_time datetime,
time_stamp timestamp,
PRIMARY KEY (auto)
) engine=ndb;
2004-12-17 21:13:22 +01:00
2005-02-11 22:05:24 +01:00
insert into t1 values
2005-02-23 17:18:06 +01:00
(NULL,"aaaa","aaaa",0xAAAA,0xAAAA,-1,-1,-1,-1,-1,1.1,1.1,1.1,1,1,1,1,1,
2005-02-11 22:05:24 +01:00
b'001','one','one',
'1901-01-01','1901',
'01:01:01','1901-01-01 01:01:01',NULL),
2005-02-23 17:18:06 +01:00
(NULL,"bbbb","bbbb",0xBBBB,0xBBBB,-2,-2,-2,-2,-2,2.2,2.2,2.2,2,2,2,2,2,
2005-02-11 22:05:24 +01:00
b'010','two','one,two',
'1902-02-02','1902',
'02:02:02','1902-02-02 02:02:02',NULL),
2005-02-23 17:18:06 +01:00
(NULL,"cccc","cccc",0xCCCC,0xCCCC,-3,-3,-3,-3,-3,3.3,3.3,3.3,3,3,3,3,3,
2005-02-11 22:05:24 +01:00
b'011','three','one,two,three',
'1903-03-03','1903',
'03:03:03','1903-03-03 03:03:03',NULL),
2005-02-23 17:18:06 +01:00
(NULL,"dddd","dddd",0xDDDD,0xDDDD,-4,-4,-4,-4,-4,4.4,4.4,4.4,4,4,4,4,4,
2005-02-11 22:05:24 +01:00
b'100','four','one,two,three,four',
'1904-04-04','1904',
'04:04:04','1904-04-04 04:04:04',NULL);
2004-12-17 21:13:22 +01:00
2005-02-11 22:05:24 +01:00
CREATE TABLE t2 (pk1 int unsigned NOT NULL PRIMARY KEY, attr1 int unsigned NOT NULL, attr2 int unsigned, attr3 VARCHAR(10) ) ENGINE=ndbcluster;
2004-12-17 21:13:22 +01:00
2005-02-11 22:05:24 +01:00
insert into t2 values (0,0,0, "a"),(1,1,1,"b"),(2,2,NULL,NULL),(3,3,3,"d"),(4,4,4,"e"),(5,5,5,"f");
2004-12-17 21:13:22 +01:00
2005-02-11 22:05:24 +01:00
CREATE TABLE t3 (pk1 int unsigned NOT NULL PRIMARY KEY, attr1 int unsigned NOT NULL, attr2 bigint unsigned, attr3 tinyint unsigned, attr4 VARCHAR(10) ) ENGINE=ndbcluster;
insert into t3 values (0,0,0,0,"a"),(1,1,9223372036854775803,1,"b"),(2,2,9223372036854775804,2,"c"),(3,3,9223372036854775805,3,"d"),(4,4,9223372036854775806,4,"e"),(5,5,9223372036854775807,5,"f");
CREATE TABLE t4 (pk1 int unsigned NOT NULL PRIMARY KEY, attr1 int unsigned NOT NULL, attr2 bigint unsigned, attr3 tinyint unsigned, attr4 VARCHAR(10) , KEY (attr1)) ENGINE=ndbcluster;
insert into t4 values (0,0,0,0,"a"),(1,1,9223372036854775803,1,"b"),(2,2,9223372036854775804,2,"c"),(3,3,9223372036854775805,3,"d"),(4,4,9223372036854775806,4,"e"),(5,5,9223372036854775807,5,"f");
set @old_ecpd = @@session.engine_condition_pushdown;
set engine_condition_pushdown = off;
# Test all types and compare operators
select auto from t1 where
string = "aaaa" and
vstring = "aaaa" and
2005-02-23 17:18:06 +01:00
bin = 0xAAAA and
vbin = 0xAAAA and
2005-02-11 22:05:24 +01:00
tiny = -1 and
short = -1 and
medium = -1 and
long_int = -1 and
longlong = -1 and
real_float > 1.0 and real_float < 2.0 and
2005-02-17 11:16:24 +01:00
real_double > 1.0 and real_double < 2.0 and
real_decimal > 1.0 and real_decimal < 2.0 and
2005-02-11 22:05:24 +01:00
utiny = 1 and
ushort = 1 and
umedium = 1 and
ulong = 1 and
ulonglong = 1 and
bits = b'001' and
options = 'one' and
flags = 'one' and
date_field = '1901-01-01' and
year_field = '1901' and
time_field = '01:01:01' and
date_time = '1901-01-01 01:01:01'
order by auto;
select auto from t1 where
string != "aaaa" and
vstring != "aaaa" and
2005-02-23 17:18:06 +01:00
bin != 0xAAAA and
vbin != 0xAAAA and
2005-02-11 22:05:24 +01:00
tiny != -1 and
short != -1 and
medium != -1 and
long_int != -1 and
longlong != -1 and
(real_float < 1.0 or real_float > 2.0) and
2005-02-17 11:16:24 +01:00
(real_double < 1.0 or real_double > 2.0) and
(real_decimal < 1.0 or real_decimal > 2.0) and
2005-02-11 22:05:24 +01:00
utiny != 1 and
ushort != 1 and
umedium != 1 and
ulong != 1 and
ulonglong != 1 and
bits != b'001' and
options != 'one' and
flags != 'one' and
date_field != '1901-01-01' and
year_field != '1901' and
time_field != '01:01:01' and
date_time != '1901-01-01 01:01:01'
order by auto;
select auto from t1 where
string > "aaaa" and
vstring > "aaaa" and
2005-02-23 17:18:06 +01:00
bin > 0xAAAA and
vbin > 0xAAAA and
2005-02-11 22:05:24 +01:00
tiny < -1 and
short < -1 and
medium < -1 and
long_int < -1 and
longlong < -1 and
real_float > 1.1 and
real_double > 1.1 and
2005-02-17 11:16:24 +01:00
real_decimal > 1.1 and
2005-02-11 22:05:24 +01:00
utiny > 1 and
ushort > 1 and
umedium > 1 and
ulong > 1 and
ulonglong > 1 and
bits > b'001' and
(options = 'two' or options = 'three' or options = 'four') and
(flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
date_field > '1901-01-01' and
year_field > '1901' and
time_field > '01:01:01' and
date_time > '1901-01-01 01:01:01'
order by auto;
select auto from t1 where
string >= "aaaa" and
vstring >= "aaaa" and
2005-02-23 17:18:06 +01:00
bin >= 0xAAAA and
vbin >= 0xAAAA and
2005-02-11 22:05:24 +01:00
tiny <= -1 and
short <= -1 and
medium <= -1 and
long_int <= -1 and
longlong <= -1 and
real_float >= 1.0 and
real_double >= 1.0 and
2005-02-17 11:16:24 +01:00
real_decimal >= 1.0 and
2005-02-11 22:05:24 +01:00
utiny >= 1 and
ushort >= 1 and
umedium >= 1 and
ulong >= 1 and
ulonglong >= 1 and
bits >= b'001' and
(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
date_field >= '1901-01-01' and
year_field >= '1901' and
time_field >= '01:01:01' and
date_time >= '1901-01-01 01:01:01'
order by auto;
select auto from t1 where
string < "dddd" and
vstring < "dddd" and
2005-02-23 17:18:06 +01:00
bin < 0xDDDD and
vbin < 0xDDDD and
2005-02-11 22:05:24 +01:00
tiny > -4 and
short > -4 and
medium > -4 and
long_int > -4 and
longlong > -4 and
real_float < 4.4 and
real_double < 4.4 and
2005-02-17 11:16:24 +01:00
real_decimal < 4.4 and
2005-02-11 22:05:24 +01:00
utiny < 4 and
ushort < 4 and
umedium < 4 and
ulong < 4 and
ulonglong < 4 and
bits < b'100' and
(options = 'one' or options = 'two' or options = 'three') and
(flags = 'one' or flags = 'one,two' or flags = 'one,two,three') and
date_field < '1904-01-01' and
year_field < '1904' and
time_field < '04:04:04' and
date_time < '1904-04-04 04:04:04'
order by auto;
select auto from t1 where
string <= "dddd" and
vstring <= "dddd" and
2005-02-23 17:18:06 +01:00
bin <= 0xDDDD and
vbin <= 0xDDDD and
2005-02-11 22:05:24 +01:00
tiny >= -4 and
short >= -4 and
medium >= -4 and
long_int >= -4 and
longlong >= -4 and
real_float <= 4.5 and
real_double <= 4.5 and
2005-02-17 11:16:24 +01:00
real_decimal <= 4.5 and
2005-02-11 22:05:24 +01:00
utiny <= 4 and
ushort <= 4 and
umedium <= 4 and
ulong <= 4 and
ulonglong <= 4 and
bits <= b'100' and
(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
date_field <= '1904-04-04' and
year_field <= '1904' and
time_field <= '04:04:04' and
date_time <= '1904-04-04 04:04:04'
order by auto;
2005-02-23 15:51:26 +01:00
# Test LIKE/NOT LIKE
select auto from t1 where
string like "b%" and
2005-02-23 17:18:06 +01:00
vstring like "b%"
2005-02-23 15:51:26 +01:00
order by auto;
select auto from t1 where
string not like "b%" and
2005-02-23 17:18:06 +01:00
vstring not like "b%"
2005-02-23 15:51:26 +01:00
order by auto;
2005-02-11 22:05:24 +01:00
# Various tests
select * from t2 where attr3 is null or attr1 > 2 and pk1= 3 order by pk1;
2005-02-23 15:51:26 +01:00
select * from t2 where attr3 is not null and attr1 > 2 order by pk1;
2005-02-11 22:05:24 +01:00
select * from t3 where attr2 > 9223372036854775803 and attr3 != 3 order by pk1;
2005-02-23 15:51:26 +01:00
select * from t2,t3 where t2.attr1 < 1 and t2.attr2 = t3.attr2 and t3.attr1 < 5 order by t2.pk1;
2005-02-11 22:05:24 +01:00
select * from t4 where attr1 < 5 and attr2 > 9223372036854775803 and attr3 != 3 order by t4.pk1;
select * from t3,t4 where t4.attr1 > 1 and t4.attr2 = t3.attr2 and t4.attr3 < 5 order by t4.pk1;
set engine_condition_pushdown = on;
# Test all types and compare operators
select auto from t1 where
string = "aaaa" and
vstring = "aaaa" and
2005-02-23 17:18:06 +01:00
bin = 0xAAAA and
vbin = 0xAAAA and
2005-02-11 22:05:24 +01:00
tiny = -1 and
short = -1 and
medium = -1 and
long_int = -1 and
longlong = -1 and
real_float > 1.0 and real_float < 2.0 and
2005-02-17 11:16:24 +01:00
real_double > 1.0 and real_double < 2.0 and
real_decimal > 1.0 and real_decimal < 2.0 and
2005-02-11 22:05:24 +01:00
utiny = 1 and
ushort = 1 and
umedium = 1 and
ulong = 1 and
ulonglong = 1 and
/* bits = b'001' and */
options = 'one' and
flags = 'one' and
date_field = '1901-01-01' and
year_field = '1901' and
time_field = '01:01:01' and
date_time = '1901-01-01 01:01:01'
order by auto;
select auto from t1 where
string != "aaaa" and
vstring != "aaaa" and
2005-02-23 17:18:06 +01:00
bin != 0xAAAA and
vbin != 0xAAAA and
2005-02-11 22:05:24 +01:00
tiny != -1 and
short != -1 and
medium != -1 and
long_int != -1 and
longlong != -1 and
(real_float < 1.0 or real_float > 2.0) and
2005-02-17 11:16:24 +01:00
(real_double < 1.0 or real_double > 2.0) and
(real_decimal < 1.0 or real_decimal > 2.0) and
2005-02-11 22:05:24 +01:00
utiny != 1 and
ushort != 1 and
umedium != 1 and
ulong != 1 and
ulonglong != 1 and
/* bits != b'001' and */
options != 'one' and
flags != 'one' and
date_field != '1901-01-01' and
year_field != '1901' and
time_field != '01:01:01' and
date_time != '1901-01-01 01:01:01'
order by auto;
select auto from t1 where
string > "aaaa" and
vstring > "aaaa" and
2005-02-23 17:18:06 +01:00
bin > 0xAAAA and
vbin > 0xAAAA and
2005-02-11 22:05:24 +01:00
tiny < -1 and
short < -1 and
medium < -1 and
long_int < -1 and
longlong < -1 and
real_float > 1.1 and
real_double > 1.1 and
2005-02-17 11:16:24 +01:00
real_decimal > 1.1 and
2005-02-11 22:05:24 +01:00
utiny > 1 and
ushort > 1 and
umedium > 1 and
ulong > 1 and
ulonglong > 1 and
/* bits > b'001' and */
(options = 'two' or options = 'three' or options = 'four') and
(flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
date_field > '1901-01-01' and
year_field > '1901' and
time_field > '01:01:01' and
date_time > '1901-01-01 01:01:01'
order by auto;
select auto from t1 where
string >= "aaaa" and
vstring >= "aaaa" and
2005-02-23 17:18:06 +01:00
bin >= 0xAAAA and
vbin >= 0xAAAA and
2005-02-11 22:05:24 +01:00
tiny <= -1 and
short <= -1 and
medium <= -1 and
long_int <= -1 and
longlong <= -1 and
real_float >= 1.0 and
real_double >= 1.0 and
2005-02-17 11:16:24 +01:00
real_decimal >= 1.0 and
2005-02-11 22:05:24 +01:00
utiny >= 1 and
ushort >= 1 and
umedium >= 1 and
ulong >= 1 and
ulonglong >= 1 and
/* bits >= b'001' and */
(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
date_field >= '1901-01-01' and
year_field >= '1901' and
time_field >= '01:01:01' and
date_time >= '1901-01-01 01:01:01'
order by auto;
select auto from t1 where
string < "dddd" and
vstring < "dddd" and
2005-02-23 17:18:06 +01:00
bin < 0xDDDD and
vbin < 0xDDDD and
2005-02-11 22:05:24 +01:00
tiny > -4 and
short > -4 and
medium > -4 and
long_int > -4 and
longlong > -4 and
real_float < 4.4 and
real_double < 4.4 and
2005-02-17 11:16:24 +01:00
real_decimal < 4.4 and
2005-02-11 22:05:24 +01:00
utiny < 4 and
ushort < 4 and
umedium < 4 and
ulong < 4 and
ulonglong < 4 and
/* bits < b'100' and */
(options = 'one' or options = 'two' or options = 'three') and
(flags = 'one' or flags = 'one,two' or flags = 'one,two,three') and
date_field < '1904-01-01' and
year_field < '1904' and
time_field < '04:04:04' and
date_time < '1904-04-04 04:04:04'
order by auto;
select auto from t1 where
string <= "dddd" and
vstring <= "dddd" and
2005-02-23 17:18:06 +01:00
bin <= 0xDDDD and
vbin <= 0xDDDD and
2005-02-11 22:05:24 +01:00
tiny >= -4 and
short >= -4 and
medium >= -4 and
long_int >= -4 and
longlong >= -4 and
real_float <= 4.5 and
real_double <= 4.5 and
2005-02-17 11:16:24 +01:00
real_decimal <= 4.5 and
2005-02-11 22:05:24 +01:00
utiny <= 4 - 1 + 1 and /* Checking function composition */
ushort <= 4 and
umedium <= 4 and
ulong <= 4 and
ulonglong <= 4 and
/* bits <= b'100' and */
(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
date_field <= '1904-04-04' and
year_field <= '1904' and
time_field <= '04:04:04' and
date_time <= '1904-04-04 04:04:04'
order by auto;
# Test index scan with filter
create index medium_index on t1(medium);
# Test all types and compare operators
select auto from t1 where
string = "aaaa" and
vstring = "aaaa" and
2005-02-23 17:18:06 +01:00
bin = 0xAAAA and
vbin = 0xAAAA and
2005-02-11 22:05:24 +01:00
tiny = -1 and
short = -1 and
medium = -1 and
long_int = -1 and
longlong = -1 and
real_float > 1.0 and real_float < 2.0 and
2005-02-17 11:16:24 +01:00
real_double > 1.0 and real_double < 2.0 and
real_decimal > 1.0 and real_decimal < 2.0 and
2005-02-11 22:05:24 +01:00
utiny = 1 and
ushort = 1 and
umedium = 1 and
ulong = 1 and
ulonglong = 1 and
/* bits = b'001' and */
options = 'one' and
flags = 'one' and
date_field = '1901-01-01' and
year_field = '1901' and
time_field = '01:01:01' and
date_time = '1901-01-01 01:01:01'
order by auto;
select auto from t1 where
string != "aaaa" and
vstring != "aaaa" and
2005-02-23 17:18:06 +01:00
bin != 0xAAAA and
vbin != 0xAAAA and
2005-02-11 22:05:24 +01:00
tiny != -1 and
short != -1 and
medium != -1 and
long_int != -1 and
longlong != -1 and
(real_float < 1.0 or real_float > 2.0) and
2005-02-17 11:16:24 +01:00
(real_double < 1.0 or real_double > 2.0) and
(real_decimal < 1.0 or real_decimal > 2.0) and
2005-02-11 22:05:24 +01:00
utiny != 1 and
ushort != 1 and
umedium != 1 and
ulong != 1 and
ulonglong != 1 and
/* bits != b'001' and */
options != 'one' and
flags != 'one' and
date_field != '1901-01-01' and
year_field != '1901' and
time_field != '01:01:01' and
date_time != '1901-01-01 01:01:01'
order by auto;
select auto from t1 where
string > "aaaa" and
vstring > "aaaa" and
2005-02-23 17:18:06 +01:00
bin > 0xAAAA and
vbin > 0xAAAA and
2005-02-11 22:05:24 +01:00
tiny < -1 and
short < -1 and
medium < -1 and
long_int < -1 and
longlong < -1 and
real_float > 1.1 and
real_double > 1.1 and
2005-02-17 11:16:24 +01:00
real_decimal > 1.1 and
2005-02-11 22:05:24 +01:00
utiny > 1 and
ushort > 1 and
umedium > 1 and
ulong > 1 and
ulonglong > 1 and
/* bits > b'001' and */
(options = 'two' or options = 'three' or options = 'four') and
(flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
date_field > '1901-01-01' and
year_field > '1901' and
time_field > '01:01:01' and
date_time > '1901-01-01 01:01:01'
order by auto;
select auto from t1 where
string >= "aaaa" and
vstring >= "aaaa" and
2005-02-23 17:18:06 +01:00
bin >= 0xAAAA and
vbin >= 0xAAAA and
2005-02-11 22:05:24 +01:00
tiny <= -1 and
short <= -1 and
medium <= -1 and
long_int <= -1 and
longlong <= -1 and
real_float >= 1.0 and
real_double >= 1.0 and
2005-02-17 11:16:24 +01:00
real_decimal >= 1.0 and
2005-02-11 22:05:24 +01:00
utiny >= 1 and
ushort >= 1 and
umedium >= 1 and
ulong >= 1 and
ulonglong >= 1 and
/* bits >= b'001' and */
(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
date_field >= '1901-01-01' and
year_field >= '1901' and
time_field >= '01:01:01' and
date_time >= '1901-01-01 01:01:01'
order by auto;
select auto from t1 where
string < "dddd" and
vstring < "dddd" and
2005-02-23 17:18:06 +01:00
bin < 0xDDDD and
vbin < 0xDDDD and
2005-02-11 22:05:24 +01:00
tiny > -4 and
short > -4 and
medium > -4 and
long_int > -4 and
longlong > -4 and
real_float < 4.4 and
real_double < 4.4 and
2005-02-17 11:16:24 +01:00
real_decimal < 4.4 and
2005-02-11 22:05:24 +01:00
utiny < 4 and
ushort < 4 and
umedium < 4 and
ulong < 4 and
ulonglong < 4 and
/* bits < b'100' and */
(options = 'one' or options = 'two' or options = 'three') and
(flags = 'one' or flags = 'one,two' or flags = 'one,two,three') and
date_field < '1904-01-01' and
year_field < '1904' and
time_field < '04:04:04' and
date_time < '1904-04-04 04:04:04'
order by auto;
select auto from t1 where
string <= "dddd" and
vstring <= "dddd" and
2005-02-23 17:18:06 +01:00
bin <= 0xDDDD and
vbin <= 0xDDDD and
2005-02-11 22:05:24 +01:00
tiny >= -4 and
short >= -4 and
medium >= -4 and
long_int >= -4 and
longlong >= -4 and
real_float <= 4.5 and
real_double <= 4.5 and
2005-02-17 11:16:24 +01:00
real_decimal <= 4.5 and
2005-02-11 22:05:24 +01:00
utiny <= 4 - 1 + 1 and /* Checking function composition */
ushort <= 4 and
umedium <= 4 and
ulong <= 4 and
ulonglong <= 4 and
/* bits <= b'100' and */
(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
date_field <= '1904-04-04' and
year_field <= '1904' and
time_field <= '04:04:04' and
date_time <= '1904-04-04 04:04:04'
order by auto;
2005-02-23 15:51:26 +01:00
# Test LIKE/NOT LIKE
select auto from t1 where
string like "b%" and
2005-02-23 17:18:06 +01:00
vstring like "b%"
2005-02-23 15:51:26 +01:00
order by auto;
select auto from t1 where
string not like "b%" and
2005-02-23 17:18:06 +01:00
vstring not like "b%"
2005-02-23 15:51:26 +01:00
order by auto;
2005-02-11 22:05:24 +01:00
# Various tests
select * from t2 where attr3 is null or attr1 > 2 and pk1= 3 order by pk1;
2005-02-23 15:51:26 +01:00
select * from t2 where attr3 is not null and attr1 > 2 order by pk1;
2005-02-11 22:05:24 +01:00
select * from t3 where attr2 > 9223372036854775803 and attr3 != 3 order by pk1;
2005-02-23 15:51:26 +01:00
select * from t2,t3 where t2.attr1 < 1 and t2.attr2 = t3.attr2 and t3.attr1 < 5 order by t2.pk1;
2005-02-11 22:05:24 +01:00
select * from t4 where attr1 < 5 and attr2 > 9223372036854775803 and attr3 != 3 order by t4.pk1;
select * from t3,t4 where t4.attr1 > 1 and t4.attr2 = t3.attr2 and t4.attr3 < 5 order by t4.pk1;
2005-02-23 15:51:26 +01:00
# Some tests that are currently not supported and should not push condition
select auto from t1 where string = "aaaa" collate latin1_general_ci order by auto;
select * from t2 where (attr1 < 2) = (attr2 < 2) order by pk1;
2005-02-11 22:05:24 +01:00
set engine_condition_pushdown = @old_ecpd;
DROP TABLE t1,t2,t3,t4;