1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00
sql/item.cc:
  Auto merged
This commit is contained in:
unknown
2003-08-26 16:49:53 +03:00
492 changed files with 17001 additions and 7120 deletions

View File

@ -210,7 +210,6 @@ CHARACTER_SET=latin1
DBUSER=""
START_WAIT_TIMEOUT=10
STOP_WAIT_TIMEOUT=10
TEST_REPLICATION=0
MYSQL_TEST_SSL_OPTS=""
while test $# -gt 0; do
@ -288,9 +287,6 @@ while test $# -gt 0; do
--user-test=*)
USER_TEST=`$ECHO "$1" | $SED -e "s;--user-test=;;"`
;;
--rpl)
TEST_REPLICATION=1
;;
--mysqld=*)
TMP=`$ECHO "$1" | $SED -e "s;--mysqld=;;"`
EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT $TMP"
@ -323,11 +319,15 @@ while test $# -gt 0; do
$ECHO "Note: you will get more meaningful output on a source distribution compiled with debugging option when running tests with --client-gdb option"
fi
DO_CLIENT_GDB=1
EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT --gdb"
EXTRA_SLAVE_MYSQLD_OPT="$EXTRA_SLAVE_MYSQLD_OPT --gdb"
;;
--manual-gdb )
DO_GDB=1
MANUAL_GDB=1
USE_RUNNING_SERVER=""
EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT --gdb"
EXTRA_SLAVE_MYSQLD_OPT="$EXTRA_SLAVE_MYSQLD_OPT --gdb"
;;
--ddd )
if [ x$BINARY_DIST = x1 ] ; then
@ -335,11 +335,13 @@ while test $# -gt 0; do
fi
DO_DDD=1
USE_RUNNING_SERVER=""
EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT --gdb"
EXTRA_SLAVE_MYSQLD_OPT="$EXTRA_SLAVE_MYSQLD_OPT --gdb"
;;
--valgrind)
VALGRIND="valgrind --alignment=8 --leak-check=yes --num-callers=16"
EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT --skip-safemalloc"
EXTRA_SLAVE_MYSQLD_OPT="$EXTRA_SLAVE_MYSQLD_OPT --skip-safemalloc"
EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT --skip-safemalloc --skip-bdb"
EXTRA_SLAVE_MYSQLD_OPT="$EXTRA_SLAVE_MYSQLD_OPT --skip-safemalloc --skip-bdb"
SLEEP_TIME_AFTER_RESTART=10
SLEEP_TIME_FOR_DELETE=60
USE_RUNNING_SERVER=""
@ -567,7 +569,9 @@ error () {
}
error_is () {
$CAT < $TIMEFILE | $SED -e 's/.* At line \(.*\)\: \(.*\)/ \>\> Error at line \1: \2<\</' | $HEAD -1
$ECHO "Errors are (from $TIMEFILE) :"
$CAT < $TIMEFILE
$ECHO "(the last line(s) may be the ones that caused the die() in mysqltest)"
}
prefix_to_8() {
@ -990,7 +994,7 @@ start_slave()
if [ x$DO_DDD = x1 ]
then
$ECHO "set args $master_args" > $GDB_SLAVE_INIT
$ECHO "set args $slave_args" > $GDB_SLAVE_INIT
manager_launch $slave_ident ddd -display $DISPLAY --debugger \
"gdb -x $GDB_SLAVE_INIT" $SLAVE_MYSQLD
elif [ x$DO_GDB = x1 ]
@ -1068,6 +1072,16 @@ stop_slave ()
fi
}
stop_slave_threads ()
{
eval "this_slave_running=\$SLAVE$1_RUNNING"
slave_ident="slave$1"
if [ x$this_slave_running = x1 ]
then
$MYSQLADMIN --no-defaults -uroot --socket=$MYSQL_TMP_DIR/$slave_ident.sock stop-slave > /dev/null 2>&1
fi
}
stop_master ()
{
if [ x$MASTER_RUNNING = x1 ]
@ -1161,6 +1175,12 @@ run_testcase ()
return
fi
# Stop all slave threads, so that we don't have useless reconnection attempts
# and error messages in case the slave and master servers restart.
stop_slave_threads
stop_slave_threads 1
stop_slave_threads 2
if [ -z "$USE_RUNNING_SERVER" ] ;
then
if [ -f $master_opt_file ] ;
@ -1383,17 +1403,10 @@ then
if [ x$RECORD = x1 ]; then
$ECHO "Will not run in record mode without a specific test case."
else
if [ x$TEST_REPLICATION = x1 ]; then
for tf in `ls -1 $TESTDIR/*.$TESTSUFFIX | $SORT`
do
run_testcase $tf
done
else
for tf in $TESTDIR/*.$TESTSUFFIX
do
run_testcase $tf
done
fi
for tf in $TESTDIR/*.$TESTSUFFIX
do
run_testcase $tf
done
$RM -f $TIMEFILE # Remove for full test
fi
else

View File

@ -59,3 +59,15 @@ SELECT ELT(FIELD(kundentyp,'PP','PPA','PG','PGA','FK','FKA','FP','FPA','K','KA',
Kundentyp kategorie
Privat (Private Nutzung) Mobilfunk
drop table t1;
CREATE TABLE t1 (
AUFNR varchar(12) NOT NULL default '',
PLNFL varchar(6) NOT NULL default '',
VORNR varchar(4) NOT NULL default '',
xstatus_vor smallint(5) unsigned NOT NULL default '0',
);
INSERT INTO t1 VALUES ('40004712','000001','0010',9);
INSERT INTO t1 VALUES ('40004712','000001','0020',0);
UPDATE t1 SET t1.xstatus_vor = Greatest(t1.xstatus_vor,1) WHERE t1.aufnr =
"40004712" AND t1.plnfl = "000001" AND t1.vornr > "0010" ORDER BY t1.vornr
ASC LIMIT 1;
drop table t1;

View File

@ -320,3 +320,72 @@ select a,hex(a) from t1;
a hex(a)
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> D4C5D3D4
drop table t1;
CREATE TABLE t1 (
Host varchar(16) binary NOT NULL default '',
User varchar(16) binary NOT NULL default '',
PRIMARY KEY (Host,User)
) TYPE=MyISAM;
ALTER TABLE t1 DISABLE KEYS;
LOCK TABLES t1 WRITE;
INSERT INTO t1 VALUES ('localhost','root'),('localhost',''),('games','monty');
SHOW INDEX FROM t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
t1 0 PRIMARY 2 User A 3 NULL NULL BTREE
ALTER TABLE t1 ENABLE KEYS;
UNLOCK TABLES;
CHECK TABLES t1;
Table Op Msg_type Msg_text
test.t1 check status OK
DROP TABLE t1;
CREATE TABLE t1 (
Host varchar(16) binary NOT NULL default '',
User varchar(16) binary NOT NULL default '',
PRIMARY KEY (Host,User),
KEY (Host)
) TYPE=MyISAM;
ALTER TABLE t1 DISABLE KEYS;
SHOW INDEX FROM t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
t1 0 PRIMARY 2 User A 0 NULL NULL BTREE
t1 1 Host 1 Host A NULL NULL NULL BTREE disabled
LOCK TABLES t1 WRITE;
INSERT INTO t1 VALUES ('localhost','root'),('localhost','');
SHOW INDEX FROM t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
t1 0 PRIMARY 2 User A 2 NULL NULL BTREE
t1 1 Host 1 Host A NULL NULL NULL BTREE disabled
ALTER TABLE t1 ENABLE KEYS;
SHOW INDEX FROM t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
t1 0 PRIMARY 2 User A 2 NULL NULL BTREE
t1 1 Host 1 Host A 1 NULL NULL BTREE
UNLOCK TABLES;
CHECK TABLES t1;
Table Op Msg_type Msg_text
test.t1 check status OK
LOCK TABLES t1 WRITE;
ALTER TABLE t1 RENAME t2;
UNLOCK TABLES;
select * from t2;
Host User
localhost
localhost root
DROP TABLE t2;
CREATE TABLE t1 (
Host varchar(16) binary NOT NULL default '',
User varchar(16) binary NOT NULL default '',
PRIMARY KEY (Host,User),
KEY (Host)
) TYPE=MyISAM;
LOCK TABLES t1 WRITE;
ALTER TABLE t1 DISABLE KEYS;
SHOW INDEX FROM t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
t1 0 PRIMARY 2 User A 0 NULL NULL BTREE
t1 1 Host 1 Host A NULL NULL NULL BTREE disabled
DROP TABLE t1;

View File

@ -1,4 +1,5 @@
drop table if exists t1;
SET SQL_WARNINGS=1;
create table t1 (a int not null auto_increment,b int, primary key (a)) type=myisam auto_increment=3;
insert into t1 values (1,1),(NULL,3),(NULL,4);
delete from t1 where a=4;
@ -130,7 +131,7 @@ last_insert_id()
255
insert into t1 set i = null;
Warnings:
Warning 1262 Data truncated, out of range for column 'i' at row 1
Warning 1263 Data truncated, out of range for column 'i' at row 1
select last_insert_id();
last_insert_id()
255
@ -150,3 +151,91 @@ select last_insert_id();
last_insert_id()
0
drop table t1;
create table t1(a int auto_increment,b int null,primary key(a));
SET SQL_MODE=NO_AUTO_VALUE_ON_ZERO;
insert into t1(a,b)values(NULL,1);
insert into t1(a,b)values(200,2);
insert into t1(a,b)values(0,3);
insert into t1(b)values(4);
insert into t1(b)values(5);
insert into t1(b)values(6);
insert into t1(b)values(7);
select * from t1 order by b;
a b
1 1
200 2
0 3
201 4
202 5
203 6
204 7
delete from t1 where a=0;
update t1 set a=0 where b=5;
select * from t1 order by b;
a b
1 1
200 2
201 4
0 5
203 6
204 7
delete from t1 where a=0;
update t1 set a=NULL where b=6;
Warnings:
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'a' at row 4
update t1 set a=300 where b=7;
SET SQL_MODE='';
insert into t1(a,b)values(NULL,8);
insert into t1(a,b)values(400,9);
insert into t1(a,b)values(0,10);
insert into t1(b)values(11);
insert into t1(b)values(12);
insert into t1(b)values(13);
insert into t1(b)values(14);
select * from t1 order by b;
a b
1 1
200 2
201 4
0 6
300 7
301 8
400 9
401 10
402 11
403 12
404 13
405 14
delete from t1 where a=0;
update t1 set a=0 where b=12;
select * from t1 order by b;
a b
1 1
200 2
201 4
300 7
301 8
400 9
401 10
402 11
0 12
404 13
405 14
delete from t1 where a=0;
update t1 set a=NULL where b=13;
Warnings:
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'a' at row 9
update t1 set a=500 where b=14;
select * from t1 order by b;
a b
1 1
200 2
201 4
300 7
301 8
400 9
401 10
402 11
0 13
500 14
drop table t1;

View File

@ -42,6 +42,60 @@ t1 CREATE TABLE `t1` (
`t` char(4) character set cp1251 NOT NULL default ''
) TYPE=MyISAM CHARSET=latin1
drop table t1;
select
cast(_latin1'ab' AS char) as c1,
cast(_latin1'a ' AS char) as c2,
cast(_latin1'abc' AS char(2)) as c3,
cast(_latin1'a ' AS char(2)) as c4,
cast(_latin1'a' AS char(2)) as c5;
c1 c2 c3 c4 c5
ab a ab a a
create table t1 select
cast(_latin1'ab' AS char) as c1,
cast(_latin1'a ' AS char) as c2,
cast(_latin1'abc' AS char(2)) as c3,
cast(_latin1'a ' AS char(2)) as c4,
cast(_latin1'a' AS char(2)) as c5;
select * from t1;
c1 c2 c3 c4 c5
ab a ab a a
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`c1` char(2) binary NOT NULL default '',
`c2` char(2) binary NOT NULL default '',
`c3` char(2) binary NOT NULL default '',
`c4` char(2) binary NOT NULL default '',
`c5` char(2) binary NOT NULL default ''
) TYPE=MyISAM CHARSET=latin1
drop table t1;
select
cast(_koi8r'<27><>' AS nchar) as c1,
cast(_koi8r'<27> ' AS nchar) as c2,
cast(_koi8r'<27><><EFBFBD>' AS nchar(2)) as c3,
cast(_koi8r'<27> ' AS nchar(2)) as c4,
cast(_koi8r'<27>' AS nchar(2)) as c5;
c1 c2 c3 c4 c5
фг ф фг ф ф
create table t1 select
cast(_koi8r'<27><>' AS nchar) as c1,
cast(_koi8r'<27> ' AS nchar) as c2,
cast(_koi8r'<27><><EFBFBD>' AS nchar(2)) as c3,
cast(_koi8r'<27> ' AS nchar(2)) as c4,
cast(_koi8r'<27>' AS nchar(2)) as c5;
select * from t1;
c1 c2 c3 c4 c5
фг ф фг ф ф
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`c1` char(2) character set utf8 NOT NULL default '',
`c2` char(2) character set utf8 NOT NULL default '',
`c3` char(2) character set utf8 NOT NULL default '',
`c4` char(2) character set utf8 NOT NULL default '',
`c5` char(2) character set utf8 NOT NULL default ''
) TYPE=MyISAM CHARSET=latin1
drop table t1;
select cast("2001-1-1" as date) = "2001-01-01";
cast("2001-1-1" as date) = "2001-01-01"
1

View File

@ -0,0 +1,7 @@
DROP TABLE IF EXISTS t1, t2;
CREATE TABLE t1 (id INTEGER, grp TINYINT, id_rev INTEGER);
SELECT COUNT(*) FROM t1;
COUNT(*)
4181000
SELECT COUNT(DISTINCT id) FROM t1 GROUP BY grp;
DROP TABLE t1;

View File

@ -10,7 +10,7 @@ create table t1 (b char(0) not null);
create table if not exists t1 (b char(0) not null);
insert into t1 values (""),(null);
Warnings:
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'b' at row 2
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'b' at row 2
select * from t1;
b
@ -193,7 +193,7 @@ SELECT @@table_type;
GEMINI
CREATE TABLE t1 (a int not null);
Warnings:
Warning 1264 Using storage engine MYISAM for table 't1'
Warning 1265 Using storage engine MYISAM for table 't1'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@ -302,7 +302,7 @@ SELECT @@table_type;
GEMINI
CREATE TABLE t1 (a int not null);
Warnings:
Warning 1264 Using storage engine MYISAM for table 't1'
Warning 1265 Using storage engine MYISAM for table 't1'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@ -310,3 +310,5 @@ t1 CREATE TABLE `t1` (
) TYPE=MyISAM CHARSET=latin1
SET SESSION table_type=default;
drop table t1;
create table t1 select x'4132';
drop table t1;

View File

@ -7,6 +7,10 @@ CREATE TABLE t2 (
latin1_f CHAR(32) CHARACTER SET latin1 COLLATE koi8r_general_ci NOT NULL
);
ERROR 42000: COLLATION 'koi8r_general_ci' is not valid for CHARACTER SET 'latin1'
CREATE TABLE t2 (
latin1_f CHAR(32) CHARACTER SET latin1 COLLATE some_non_existing_col NOT NULL
);
ERROR HY000: Unknown collation: 'some_non_existing_col'
INSERT INTO t1 (latin1_f) VALUES (_latin1'A');
INSERT INTO t1 (latin1_f) VALUES (_latin1'a');
INSERT INTO t1 (latin1_f) VALUES (_latin1'AD');
@ -482,7 +486,7 @@ y
Z
z
SELECT DISTINCT latin1_f COLLATE koi8r FROM t1;
ERROR 42000: COLLATION 'koi8r' is not valid for CHARACTER SET 'latin1'
ERROR HY000: Unknown collation: 'koi8r'
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
@ -526,3 +530,9 @@ latin1 latin1_swedish_ci 3 1
SET CHARACTER SET 'DEFAULT';
ERROR 42000: Unknown character set: 'DEFAULT'
DROP TABLE t1;
CREATE TABLE t1
(s1 CHAR(5) COLLATE latin1_german1_ci,
s2 CHAR(5) COLLATE latin1_swedish_ci);
SELECT * FROM t1 WHERE s1 = s2;
ERROR HY000: Illegal mix of collations (latin1_german1_ci,IMPLICIT) and (latin1_swedish_ci,IMPLICIT) for operation '='
DROP TABLE t1;

View File

@ -0,0 +1,24 @@
drop table if exists t1;
create table t1 (a varchar(10) not null);
insert into t1 values ("a"),("ab"),("abc");
select * from t1;
a
a
ab
abc
select a, left(a,1) as b from t1;
a b
a a
ab a
abc a
select a, left(a,1) as b from t1 group by a;
a b
a a
ab a
abc a
SELECT DISTINCT RIGHT(a,1) from t1;
RIGHT(a,1)
a
b
c
drop table t1;

View File

@ -1,3 +1,6 @@
select @@collation_connection;
@@collation_connection
latin1_german2_ci
drop table if exists t1;
create table t1 (a char (20) not null, b int not null auto_increment, index (a,b));
insert into t1 (a) values ('<27>'),('ac'),('ae'),('ad'),('<27>c'),('aeb');
@ -196,6 +199,9 @@ strcmp('
select strcmp('u','<27>a'),strcmp('u','<27>');
strcmp('u','<27>a') strcmp('u','<27>')
1 1
select strcmp('s<>', '<27>a'), strcmp('a<>', '<27>x');
strcmp('s<>', '<27>a') strcmp('a<>', '<27>x')
-1 -1
create table t1 (a varchar(10), key(a), fulltext (a));
insert into t1 values ("a"),("abc"),("abcd"),("hello"),("test");
select * from t1 where a like "abc%";
@ -264,3 +270,22 @@ select * from t1 where word like CAST(0xDF as CHAR);
word word2
<EFBFBD> <09>
drop table t1;
CREATE TABLE t1 (
s1 CHAR(5) CHARACTER SET latin1 COLLATE latin1_german2_ci
);
INSERT INTO t1 VALUES ('<27>');
INSERT INTO t1 VALUES ('ue');
SELECT DISTINCT s1 FROM t1;
s1
<EFBFBD>
SELECT s1,COUNT(*) FROM t1 GROUP BY s1;
s1 COUNT(*)
<EFBFBD> 2
SELECT COUNT(DISTINCT s1) FROM t1;
COUNT(DISTINCT s1)
1
SELECT FIELD('ue',s1), FIELD('<27>',s1), s1='ue', s1='<27>' FROM t1;
FIELD('ue',s1) FIELD('<27>',s1) s1='ue' s1='<27>'
1 1 1 1
1 1 1 1
DROP TABLE t1;

View File

@ -0,0 +1,21 @@
CREATE TABLE t1 SELECT _utf8'test' as c1, _utf8'тест' as c2;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`c1` char(4) character set utf8 NOT NULL default '',
`c2` char(4) character set utf8 NOT NULL default ''
) TYPE=MyISAM CHARSET=latin1
DELETE FROM t1;
ALTER TABLE t1 ADD c3 CHAR(4) CHARACTER SET utf8;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`c1` char(4) character set utf8 NOT NULL default '',
`c2` char(4) character set utf8 NOT NULL default '',
`c3` char(4) character set utf8 default NULL
) TYPE=MyISAM CHARSET=latin1
INSERT INTO t1 VALUES ('aaaabbbbccccdddd','aaaabbbbccccdddd','aaaabbbbccccdddd');
SELECT * FROM t1;
c1 c2 c3
aaaabbbbcccc aaaabbbbcccc aaaabbbbcccc
DROP TABLE t1;

View File

@ -1,5 +1,19 @@
SET CHARACTER SET koi8r;
DROP TABLE IF EXISTS <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
SET CHARACTER SET koi8r;
CREATE TABLE t1 (a CHAR(10) CHARACTER SET cp1251) SELECT _koi8r'<27><><EFBFBD><EFBFBD><EFBFBD>' AS a;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` char(10) character set cp1251 default NULL
) TYPE=MyISAM CHARSET=latin1
SELECT a FROM t1;
a
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SELECT HEX(a) FROM t1;
HEX(a)
EFF0EEE1E0
DROP TABLE t1;
CREATE TABLE <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
(
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> CHAR(32) CHARACTER SET koi8r NOT NULL
@ -42,3 +56,17 @@ Field Type Null Key Default Extra
SET CHARACTER SET koi8r;
DROP TABLE <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
SET CHARACTER SET default;
SET CHARACTER SET koi8r;
CREATE DATABASE <20><><EFBFBD><EFBFBD>;
USE <20><><EFBFBD><EFBFBD>;
SHOW TABLES;
Tables_in_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SHOW TABLES IN <20><><EFBFBD><EFBFBD>;
Tables_in_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SET CHARACTER SET cp1251;
SHOW TABLES;
Tables_in_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SHOW TABLES IN <20><><EFBFBD><EFBFBD>;
Tables_in_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SET CHARACTER SET koi8r;
DROP DATABASE <20><><EFBFBD><EFBFBD>;

View File

@ -137,7 +137,7 @@ a t
explain select count(*) from t1 as tt1, (select * from t1) as tt2;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
2 DERIVED tt1 index NULL a 4 NULL 10000 Using index
2 DERIVED tt1 ALL NULL NULL NULL NULL 10000
drop table t1;
SELECT * FROM (SELECT (SELECT * FROM (SELECT 1 as a) as a )) as b;
(SELECT * FROM (SELECT 1 as a) as a )
@ -160,3 +160,39 @@ id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY <derived2> ALL NULL NULL NULL NULL 3
2 DERIVED t1 ALL NULL NULL NULL NULL 3 Using temporary; Using filesort
drop table t1;
create table t1 (mat_id MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, matintnum CHAR(6) NOT NULL, test MEDIUMINT UNSIGNED NULL);
create table t2 (mat_id MEDIUMINT UNSIGNED NOT NULL, pla_id MEDIUMINT UNSIGNED NOT NULL);
insert into t1 values (NULL, 'a', 1), (NULL, 'b', 2), (NULL, 'c', 3), (NULL, 'd', 4), (NULL, 'e', 5), (NULL, 'f', 6), (NULL, 'g', 7), (NULL, 'h', 8), (NULL, 'i', 9);
insert into t2 values (1, 100), (1, 101), (1, 102), (2, 100), (2, 103), (2, 104), (3, 101), (3, 102), (3, 105);
SELECT d.pla_id, m2.mat_id FROM t1 m2 INNER JOIN (SELECT mp.pla_id, MIN(m1.matintnum) AS matintnum FROM t2 mp INNER JOIN t1 m1 ON mp.mat_id=m1.mat_id GROUP BY mp.pla_id) d ON d.matintnum=m2.matintnum;
pla_id mat_id
100 1
101 1
102 1
103 2
104 2
105 3
SELECT d.pla_id, m2.test FROM t1 m2 INNER JOIN (SELECT mp.pla_id, MIN(m1.matintnum) AS matintnum FROM t2 mp INNER JOIN t1 m1 ON mp.mat_id=m1.mat_id GROUP BY mp.pla_id) d ON d.matintnum=m2.matintnum;
pla_id test
100 1
101 1
102 1
103 2
104 2
105 3
explain SELECT d.pla_id, m2.mat_id FROM t1 m2 INNER JOIN (SELECT mp.pla_id, MIN(m1.matintnum) AS matintnum FROM t2 mp INNER JOIN t1 m1 ON mp.mat_id=m1.mat_id GROUP BY mp.pla_id) d ON d.matintnum=m2.matintnum;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY m2 ALL NULL NULL NULL NULL 9
1 PRIMARY <derived2> ALL NULL NULL NULL NULL 6 Using where
2 DERIVED mp ALL NULL NULL NULL NULL 9 Using temporary; Using filesort
2 DERIVED m2 index NULL PRIMARY 3 NULL 9 Using index
explain SELECT d.pla_id, m2.test FROM t1 m2 INNER JOIN (SELECT mp.pla_id, MIN(m1.matintnum) AS matintnum FROM t2 mp INNER JOIN t1 m1 ON mp.mat_id=m1.mat_id GROUP BY mp.pla_id) d ON d.matintnum=m2.matintnum;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY m2 ALL NULL NULL NULL NULL 9
1 PRIMARY <derived2> ALL NULL NULL NULL NULL 6 Using where
2 DERIVED mp ALL NULL NULL NULL NULL 9 Using temporary; Using filesort
2 DERIVED m2 index NULL PRIMARY 3 NULL 9 Using index
drop table t1,t2;
SELECT a.x FROM (SELECT 1 AS x) AS a HAVING a.x = 1;
x
1

View File

@ -161,7 +161,7 @@ SELECT DISTINCT UserId FROM t1 WHERE UserId=22;
UserId
drop table t1;
CREATE TABLE t1 (a int(10) unsigned not null primary key,b int(10) unsigned);
INSERT INTO t1 VALUES (1,1),(2,1);
INSERT INTO t1 VALUES (1,1),(2,1),(3,1),(4,1);
CREATE TABLE t2 (a int(10) unsigned not null, key (A));
INSERT INTO t2 VALUES (1),(2);
CREATE TABLE t3 (a int(10) unsigned, key(A), b text);
@ -173,9 +173,9 @@ INSERT INTO t2 values (1),(2),(3);
INSERT INTO t3 VALUES (1,'1'),(2,'2'),(1,'1'),(2,'2');
explain SELECT distinct t3.a FROM t3,t2,t1 WHERE t3.a=t1.b AND t1.a=t2.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 2 Using temporary
1 SIMPLE t2 ref a a 4 test.t1.a 2 Using index
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 4 Using temporary
1 SIMPLE t3 ref a a 5 test.t1.b 2 Using where; Using index
1 SIMPLE t2 index a a 4 NULL 4 Using where; Using index; Distinct
SELECT distinct t3.a FROM t3,t2,t1 WHERE t3.a=t1.b AND t1.a=t2.a;
a
1
@ -189,7 +189,7 @@ insert into t4 select * from t3;
insert into t3 select * from t4;
explain select distinct t1.a from t1,t3 where t1.a=t3.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index PRIMARY PRIMARY 4 NULL 2 Using index; Using temporary
1 SIMPLE t1 index PRIMARY PRIMARY 4 NULL 4 Using index; Using temporary
1 SIMPLE t3 ref a a 5 test.t1.a 10 Using where; Using index; Distinct
select distinct t1.a from t1,t3 where t1.a=t3.a;
a
@ -200,16 +200,16 @@ select distinct 1 from t1,t3 where t1.a=t3.a;
1
explain SELECT distinct t1.a from t1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL PRIMARY 4 NULL 2 Using index
1 SIMPLE t1 index NULL PRIMARY 4 NULL 4 Using index
explain SELECT distinct t1.a from t1 order by a desc;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL PRIMARY 4 NULL 2 Using index
1 SIMPLE t1 index NULL PRIMARY 4 NULL 4 Using index
explain SELECT t1.a from t1 group by a order by a desc;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL PRIMARY 4 NULL 2 Using index
1 SIMPLE t1 index NULL PRIMARY 4 NULL 4 Using index
explain SELECT distinct t1.a from t1 order by a desc limit 1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL PRIMARY 4 NULL 2 Using index
1 SIMPLE t1 index NULL PRIMARY 4 NULL 4 Using index
explain SELECT distinct a from t3 order by a desc limit 2;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 index NULL a 5 NULL 204 Using index
@ -418,3 +418,12 @@ SELECT DISTINCT t1.a, t2.b FROM t1, t2 WHERE t1.a=1 ORDER BY t2.c;
a b
1 4
DROP TABLE t1,t2;
CREATE table t1 ( `id` int(11) NOT NULL auto_increment, `name` varchar(50) NOT NULL default '', PRIMARY KEY (`id`)) TYPE=MyISAM AUTO_INCREMENT=3 ;
INSERT INTO t1 VALUES (1, 'aaaaa');
INSERT INTO t1 VALUES (3, 'aaaaa');
INSERT INTO t1 VALUES (2, 'eeeeeee');
select distinct left(name,1) as name from t1;
name
a
e
drop table t1;

View File

@ -1,4 +1,5 @@
drop table if exists t1;
drop database if exists mysqltest;
drop table t1;
ERROR 42S02: Unknown table 't1'
create table t1(n int);
@ -11,9 +12,6 @@ drop table t1;
select * from t1;
n
1
drop database if exists mysqltest;
Warnings:
Note 1008 Can't drop database 'mysqltest'; database doesn't exist
create database mysqltest;
drop database if exists mysqltest;
create database mysqltest;
@ -25,9 +23,6 @@ n
drop database if exists mysqltest;
create database mysqltest;
drop database mysqltest;
drop database if exists mysqltest;
Warnings:
Note 1008 Can't drop database 'mysqltest'; database doesn't exist
flush tables with read lock;
create database mysqltest;
Got one of the listed errors

View File

@ -23,6 +23,36 @@ a b
Only MyISAM tables support collections
Full-text indexes are called collections
Full-text indexes are called collections
explain select * from t1 where MATCH(a,b) AGAINST ("collections");
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 fulltext a a 0 1 Using where
explain select * from t1 where MATCH(a,b) AGAINST ("collections")>0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 fulltext a a 0 1 Using where
explain select * from t1 where MATCH(a,b) AGAINST ("collections")>1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 fulltext a a 0 1 Using where
explain select * from t1 where MATCH(a,b) AGAINST ("collections")>=0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using where
explain select * from t1 where MATCH(a,b) AGAINST ("collections")>=1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 fulltext a a 0 1 Using where
explain select * from t1 where 0<MATCH(a,b) AGAINST ("collections");
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 fulltext a a 0 1 Using where
explain select * from t1 where 1<MATCH(a,b) AGAINST ("collections");
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 fulltext a a 0 1 Using where
explain select * from t1 where 0<=MATCH(a,b) AGAINST ("collections");
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using where
explain select * from t1 where 1<=MATCH(a,b) AGAINST ("collections");
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 fulltext a a 0 1 Using where
explain select * from t1 where MATCH(a,b) AGAINST ("collections")>0 and a like '%ll%';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 fulltext a a 0 1 Using where
select * from t1 where MATCH(a,b) AGAINST("support -collections" IN BOOLEAN MODE);
a b
MySQL has now support for full-text search
@ -97,6 +127,11 @@ select * from t1 where MATCH b AGAINST ("sear*" IN BOOLEAN MODE);
a b
MySQL has now support for full-text search
Function MATCH ... AGAINST() is used to do a search
select * from t1 where MATCH(a,b) AGAINST ("collections") UNION ALL select * from t1 where MATCH(a,b) AGAINST ("indexes");
a b
Only MyISAM tables support collections
Full-text indexes are called collections
Full-text indexes are called collections
delete from t1 where a like "MySQL%";
update t1 set a='some test foobar' where MATCH a,b AGAINST ('model');
delete from t1 where MATCH(a,b) AGAINST ("indexes");
@ -226,3 +261,14 @@ select ref_mag from t1 where match ref_mag against ('+test' in boolean mode);
ref_mag
test
drop table t1;
create table t1 (t1_id int(11) primary key, name varchar(32));
insert into t1 values (1, 'data1');
insert into t1 values (2, 'data2');
create table t2 (t2_id int(11) primary key, t1_id int(11), name varchar(32));
insert into t2 values (1, 1, 'xxfoo');
insert into t2 values (2, 1, 'xxbar');
insert into t2 values (3, 1, 'xxbuz');
select * from t1 join t2 using(`t1_id`) where match (t1.name, t2.name) against('xxfoo' in boolean mode);
t1_id name t2_id t1_id name
1 data1 1 1 xxfoo
drop table t1,t2;

View File

@ -4,771 +4,6 @@ i int(10) unsigned not null auto_increment primary key,
a varchar(255) not null,
FULLTEXT KEY (a)
) TYPE=MyISAM;
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaaxxx');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaazzz');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
insert t1 (a) values ('aaayyy');
repair table t1 quick;
Table Op Msg_type Msg_text
test.t1 repair status OK

View File

@ -31,3 +31,14 @@ match(t1.texte,t1.sujet,t1.motsclefs) against('droit' IN BOOLEAN MODE)
1
0
drop table t1, t2;
create table t1 (venue_id int(11) default null, venue_text varchar(255) default null, dt datetime default null) type=myisam;
insert into t1 (venue_id, venue_text, dt) values (1, 'a1', '2003-05-23 19:30:00'),(null, 'a2', '2003-05-23 19:30:00');
create table t2 (name varchar(255) not null default '', entity_id int(11) not null auto_increment, primary key (entity_id), fulltext key name (name)) type=myisam;
insert into t2 (name, entity_id) values ('aberdeen town hall', 1), ('glasgow royal concert hall', 2), ('queen\'s hall, edinburgh', 3);
select * from t1 left join t2 on venue_id = entity_id where match(name) against('aberdeen' in boolean mode) and dt = '2003-05-23 19:30:00';
venue_id venue_text dt name entity_id
1 a1 2003-05-23 19:30:00 aberdeen town hall 1
select * from t1 left join t2 on venue_id = entity_id where match(name) against('aberdeen') and dt = '2003-05-23 19:30:00';
venue_id venue_text dt name entity_id
1 a1 2003-05-23 19:30:00 aberdeen town hall 1
drop table t1,t2;

View File

@ -148,10 +148,10 @@ grp group_concat(c)
4
5 NULL
Warnings:
Warning 1258 1 line(s) was(were) cut by group_concat()
Warning 1259 1 line(s) was(were) cut by group_concat()
show warnings;
Level Code Message
Warning 1258 1 line(s) was(were) cut by group_concat()
Warning 1259 1 line(s) was(were) cut by group_concat()
set group_concat_max_len = 1024;
select group_concat(sum(a)) from t1 group by grp;
ERROR HY000: Invalid use of group function

View File

@ -612,3 +612,9 @@ select Case When Count(*) < MAX_REQ Then 1 Else 0 End from t1 where t1.USR_ID =
Case When Count(*) < MAX_REQ Then 1 Else 0 End
1
drop table t1;
create table t1 (a char(10));
insert into t1 values ('a'),('b'),('c');
select coercibility(max(a)) from t1;
coercibility(max(a))
3
drop table t1;

View File

@ -37,3 +37,70 @@ select * from t1 where a like "%abc\d%";
a
abcd
drop table t1;
SET NAMES koi8r;
CREATE TABLE t1 (a VARCHAR(10) CHARACTER SET koi8r);
INSERT INTO t1 VALUES ('<27><><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD>');
INSERT INTO t1 VALUES ('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
INSERT INTO t1 VALUES ('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
INSERT INTO t1 VALUES ('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'),('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
SELECT * FROM t1 WHERE a LIKE '%<25><><EFBFBD><EFBFBD>%';
a
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SELECT * FROM t1 WHERE a LIKE '%<25><><EFBFBD>%';
a
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SELECT * FROM t1 WHERE a LIKE '<27><><EFBFBD><EFBFBD>%';
a
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
DROP TABLE t1;

View File

@ -13,3 +13,6 @@ NULL 255.255.1.255 0.0.1.255
select length(format('nan', 2)) > 0;
length(format('nan', 2)) > 0
1
select concat("$",format(2500,2));
concat("$",format(2500,2))
$2,500.00

View File

@ -25,6 +25,9 @@ find_in_set("","a,b,c") find_in_set("","a,b,c,") find_in_set("",",a,b,c")
select find_in_set("abc","abc"),find_in_set("ab","abc"),find_in_set("abcd","abc");
find_in_set("abc","abc") find_in_set("ab","abc") find_in_set("abcd","abc")
1 0 0
select interval(null, 1, 10, 100);
interval(null, 1, 10, 100)
-1
drop table if exists t1,t2;
create table t1 (id int(10) not null unique);
create table t2 (id int(10) not null primary key,

View File

@ -496,7 +496,7 @@ insert(_latin2'abcd',2,3,_latin2'ef'),
replace(_latin2'abcd',_latin2'b',_latin2'B')
;
Warnings:
Warning 1263 Data truncated for column 'format(130,10)' at row 1
Warning 1264 Data truncated for column 'format(130,10)' at row 1
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@ -553,3 +553,29 @@ SUBSTR('abcdefg',-1,-1)
select SUBSTR('abcdefg',1,-1) FROM DUAL;
SUBSTR('abcdefg',1,-1)
create table t7 (s1 char);
select * from t7
where concat(s1 collate latin1_general_ci,s1 collate latin1_swedish_ci) = 'AA';
ERROR HY000: Illegal mix of collations (latin1_general_ci,EXPLICIT) and (latin1_swedish_ci,EXPLICIT) for operation 'concat'
drop table t7;
CREATE TABLE t1 (
wid int(10) unsigned NOT NULL auto_increment,
data_podp date default NULL,
status_wnio enum('nowy','podp','real','arch') NOT NULL default 'nowy',
PRIMARY KEY(wid),
);
INSERT INTO t1 VALUES (8,NULL,'real');
INSERT INTO t1 VALUES (9,NULL,'nowy');
SELECT elt(status_wnio,data_podp) FROM t1 GROUP BY wid;
elt(status_wnio,data_podp)
NULL
NULL
DROP TABLE t1;
CREATE TABLE t1 (title text) TYPE=MyISAM;
INSERT INTO t1 VALUES ('Congress reconvenes in September to debate welfare and adult education');
INSERT INTO t1 VALUES ('House passes the CAREERS bill');
SELECT CONCAT("</a>",RPAD("",(55 - LENGTH(title)),".")) from t1;
CONCAT("</a>",RPAD("",(55 - LENGTH(title)),"."))
NULL
</a>..........................
DROP TABLE t1;

View File

@ -41,9 +41,9 @@ create table t1 (version char(40)) select database(), user(), version() as 'vers
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`database()` char(102) character set utf8 NOT NULL default '',
`user()` char(231) character set utf8 NOT NULL default '',
`version` char(40) character set utf8 default NULL
`database()` char(34) character set utf8 NOT NULL default '',
`user()` char(77) character set utf8 NOT NULL default '',
`version` char(40) default NULL
) TYPE=MyISAM CHARSET=latin1
drop table t1;
select TRUE,FALSE,NULL;

View File

@ -52,6 +52,20 @@ select 10 % 7, 10 mod 7, 10 div 3;
select (1 << 64)-1, ((1 << 64)-1) DIV 1, ((1 << 64)-1) DIV 2;
(1 << 64)-1 ((1 << 64)-1) DIV 1 ((1 << 64)-1) DIV 2
18446744073709551615 18446744073709551615 9223372036854775807
create table t1 (a int);
insert t1 values (1);
select * from t1 where 1 xor 1;
a
drop table t1;
select 5 between 0 and 10 between 0 and 1,(5 between 0 and 10) between 0 and 1;
5 between 0 and 10 between 0 and 1 (5 between 0 and 10) between 0 and 1
0 1
select 1 and 2 between 2 and 10, 2 between 2 and 10 and 1;
1 and 2 between 2 and 10 2 between 2 and 10 and 1
1 1
select 1 and 0 or 2, 2 or 1 and 0;
1 and 0 or 2 2 or 1 and 0
1 1
select _koi8r'a' = _koi8r'A';
_koi8r'a' = _koi8r'A'
1
@ -109,12 +123,3 @@ select _koi8r'a' COLLATE koi8r_general_ci LIKE _koi8r'A' COLLATE koi8r_bin;
ERROR HY000: Illegal mix of collations (koi8r_general_ci,EXPLICIT) and (koi8r_bin,EXPLICIT) for operation 'like'
select _koi8r'a' LIKE _latin1'A';
ERROR HY000: Illegal mix of collations (koi8r_general_ci,COERCIBLE) and (latin1_swedish_ci,COERCIBLE) for operation 'like'
select 5 between 0 and 10 between 0 and 1,(5 between 0 and 10) between 0 and 1;
5 between 0 and 10 between 0 and 1 (5 between 0 and 10) between 0 and 1
0 1
select 1 and 2 between 2 and 10, 2 between 2 and 10 and 1;
1 and 2 between 2 and 10 2 between 2 and 10 and 1
1 1
select 1 and 0 or 2, 2 or 1 and 0;
1 and 0 or 2 2 or 1 and 0
1 1

View File

@ -334,6 +334,9 @@ insert into t1 values ('2001-01-12 12:23:40');
select ctime, hour(ctime) from t1;
ctime hour(ctime)
2001-01-12 12:23:40 12
select ctime from t1 where extract(MONTH FROM ctime) = 1 AND extract(YEAR FROM ctime) = 2001;
ctime
2001-01-12 12:23:40
drop table t1;
create table t1 (id int);
create table t2 (id int, date date);
@ -465,3 +468,21 @@ select date_add(time,INTERVAL 1 SECOND) from t1;
date_add(time,INTERVAL 1 SECOND)
2006-07-08 00:00:01
drop table t1;
select strcmp(date_sub(localtimestamp(), interval 3 hour), utc_timestamp())=0;
strcmp(date_sub(localtimestamp(), interval 3 hour), utc_timestamp())=0
1
select strcmp(date_format(date_sub(localtimestamp(), interval 3 hour),"%T"), utc_time())=0;
strcmp(date_format(date_sub(localtimestamp(), interval 3 hour),"%T"), utc_time())=0
1
select strcmp(date_format(date_sub(localtimestamp(), interval 3 hour),"%Y-%m-%d"), utc_date())=0;
strcmp(date_format(date_sub(localtimestamp(), interval 3 hour),"%Y-%m-%d"), utc_date())=0
1
select strcmp(date_format(utc_timestamp(),"%T"), utc_time())=0;
strcmp(date_format(utc_timestamp(),"%T"), utc_time())=0
1
select strcmp(date_format(utc_timestamp(),"%Y-%m-%d"), utc_date())=0;
strcmp(date_format(utc_timestamp(),"%Y-%m-%d"), utc_date())=0
1
select strcmp(concat(utc_date(),' ',utc_time()),utc_timestamp())=0;
strcmp(concat(utc_date(),' ',utc_time()),utc_timestamp())=0
1

View File

@ -1,5 +1,4 @@
drop table if exists t1;
create table t1 (a int);
delete from mysql.user where user='mysqltest_1';
delete from mysql.db where user='mysqltest_1';
flush privileges;
@ -66,11 +65,53 @@ GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, CREATE TE
revoke all privileges on mysqltest.* from mysqltest_1@localhost;
delete from mysql.user where user='mysqltest_1';
flush privileges;
grant usage on test.* to user@localhost with grant option;
show grants for user@localhost;
Grants for user@localhost
GRANT USAGE ON *.* TO 'user'@'localhost'
GRANT USAGE ON `test`.* TO 'user'@'localhost' WITH GRANT OPTION
grant usage on test.* to mysqltest_1@localhost with grant option;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT USAGE ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
GRANT USAGE ON `test`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
delete from mysql.user where user='mysqltest_1';
delete from mysql.db where user='mysqltest_1';
delete from mysql.tables_priv where user='mysqltest_1';
delete from mysql.columns_priv where user='mysqltest_1';
flush privileges;
create table t1 (a int);
GRANT select,update,insert on t1 to mysqltest_1@localhost;
GRANT select (a), update (a),insert(a), references(a) on t1 to mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT SELECT, SELECT (a), INSERT, INSERT (a), UPDATE, UPDATE (a), REFERENCES (a) ON `test`.`t1` TO 'mysqltest_1'@'localhost'
select table_priv,column_priv from mysql.tables_priv where user="mysqltest_1";
table_priv column_priv
Select,Insert,Update Select,Insert,Update,References
REVOKE select (a), update on t1 from mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT SELECT, INSERT, INSERT (a), REFERENCES (a) ON `test`.`t1` TO 'mysqltest_1'@'localhost'
REVOKE insert,insert (a) on t1 from mysqltest_1@localhost;
GRANT references on t1 to mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT SELECT, REFERENCES, REFERENCES (a) ON `test`.`t1` TO 'mysqltest_1'@'localhost'
select table_priv,column_priv from mysql.tables_priv where user="mysqltest_1";
table_priv column_priv
Select,References References
delete from mysql.user where user='mysqltest_1';
delete from mysql.db where user='mysqltest_1';
delete from mysql.tables_priv where user='mysqltest_1';
delete from mysql.columns_priv where user='mysqltest_1';
flush privileges;
drop table t1;
GRANT FILE on mysqltest.* to mysqltest_1@localhost;
ERROR HY000: Wrong usage of DB GRANT and GLOBAL PRIVILEGES
select 1;
1
1
create table t1 (a int);
grant ALL PRIVILEGES on *.* to drop_user2@localhost with GRANT OPTION;
show grants for drop_user2@localhost;
Grants for drop_user2@localhost

View File

@ -0,0 +1,23 @@
delete from mysql.user where user like 'mysqltest\_%';
delete from mysql.db where user like 'mysqltest\_%';
flush privileges;
grant all privileges on `my\_%`.* to mysqltest_1@localhost with grant option;
select current_user();
current_user()
mysqltest_1@localhost
grant all privileges on `my\_1`.* to mysqltest_2@localhost with grant option;
grant all privileges on `my_%`.* to mysqltest_3@localhost with grant option;
ERROR 42000: Access denied for user: 'mysqltest_1'@'localhost' to database 'my_%'
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT ALL PRIVILEGES ON `my\_%`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
show grants for mysqltest_2@localhost;
Grants for mysqltest_2@localhost
GRANT USAGE ON *.* TO 'mysqltest_2'@'localhost'
GRANT ALL PRIVILEGES ON `my\_1`.* TO 'mysqltest_2'@'localhost' WITH GRANT OPTION
show grants for mysqltest_3@localhost;
ERROR 42000: There is no such grant defined for user 'mysqltest_3' on host 'localhost'
delete from mysql.user where user like 'mysqltest\_%';
delete from mysql.db where user like 'mysqltest\_%';
flush privileges;

View File

@ -1,4 +1,5 @@
drop table if exists test.t1,mysqltest.t1,mysqltest.t2;
drop database if exists mysqltest;
reset query cache;
flush status;
create database if not exists mysqltest;
@ -84,7 +85,7 @@ a b c a
1 1 1 test.t1
2 2 2 test.t1
select * from t2;
ERROR 42000: select command denied to user: 'mysqltest_2@localhost' for table 't2'
ERROR 42000: select command denied to user: 'mysqltest_2'@'localhost' for table 't2'
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 6
@ -98,17 +99,17 @@ select "user3";
user3
user3
select * from t1;
ERROR 42000: select command denied to user: 'mysqltest_3@localhost' for column 'b' in table 't1'
ERROR 42000: select command denied to user: 'mysqltest_3'@'localhost' for column 'b' in table 't1'
select a from t1;
a
1
2
select c from t1;
ERROR 42000: SELECT command denied to user: 'mysqltest_3@localhost' for column 'c' in table 't1'
ERROR 42000: SELECT command denied to user: 'mysqltest_3'@'localhost' for column 'c' in table 't1'
select * from t2;
ERROR 42000: select command denied to user: 'mysqltest_3@localhost' for table 't2'
ERROR 42000: select command denied to user: 'mysqltest_3'@'localhost' for table 't2'
select mysqltest.t1.c from test.t1,mysqltest.t1;
ERROR 42000: SELECT command denied to user: 'mysqltest_3@localhost' for column 'c' in table 't1'
ERROR 42000: SELECT command denied to user: 'mysqltest_3'@'localhost' for column 'c' in table 't1'
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 6

View File

@ -115,7 +115,7 @@ groupset bigint(20) DEFAULT '0' NOT NULL,
assigned_to mediumint(9) DEFAULT '0' NOT NULL,
bug_file_loc text,
bug_severity enum('blocker','critical','major','normal','minor','trivial','enhancement') DEFAULT 'blocker' NOT NULL,
bug_status enum('NEW','ASSIGNED','REOPENED','RESOLVED','VERIFIED','CLOSED') DEFAULT 'NEW' NOT NULL,
bug_status enum('','NEW','ASSIGNED','REOPENED','RESOLVED','VERIFIED','CLOSED') DEFAULT 'NEW' NOT NULL,
creation_ts datetime DEFAULT '0000-00-00 00:00:00' NOT NULL,
delta_ts timestamp(14),
short_desc mediumtext,
@ -150,92 +150,34 @@ KEY qa_contact (qa_contact),
KEY votes (votes)
);
INSERT INTO t1 VALUES (1,0,0,'','normal','','2000-02-10 09:25:12',20000321114747,'','','Linux','P1','TestProduct','PC',3,'other','TestComponent','','M1',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (9,0,0,'','enhancement','','2000-03-10 11:49:36',20000321114747,'','','All','P5','AAAAA','PC',3,'2.00 CD - Pre','BBBBBBBBBBBBB - conversion','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (10,0,0,'','enhancement','','2000-03-10 18:10:16',20000321114747,'','','All','P4','AAAAA','PC',3,'2.00 CD - Pre','BBBBBBBBBBBBB - conversion','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (7,0,0,'','critical','','2000-03-09 10:50:21',20000321114747,'','','All','P1','AAAAA','PC',3,'2.00 CD - Pre','BBBBBBBBBBBBB - generic','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (6,0,0,'','normal','','2000-03-09 10:42:44',20000321114747,'','','All','P2','AAAAA','PC',3,'2.00 CD - Pre','kkkkkkkkkkk lllllllllll','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (8,0,0,'','major','','2000-03-09 11:32:14',20000321114747,'','','All','P3','AAAAA','PC',3,'2.00 CD - Pre','kkkkkkkkkkk lllllllllll','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (5,0,0,'','enhancement','','2000-03-09 10:38:59',20000321114747,'','','All','P5','CCC/CCCCCC','PC',5,'7.00','Administration','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (4,0,0,'','normal','','2000-03-08 18:32:14',20000321114747,'','','other','P2','TestProduct','Other',3,'other','TestComponent2','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (3,0,0,'','normal','','2000-03-08 18:30:52',20000321114747,'','','other','P2','TestProduct','Other',3,'other','TestComponent','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (2,0,0,'','enhancement','','2000-03-08 18:24:51',20000321114747,'','','All','P2','TestProduct','Other',4,'other','TestComponent2','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (11,0,0,'','blocker','','2000-03-13 09:43:41',20000321114747,'','','All','P2','CCC/CCCCCC','PC',5,'7.00','DDDDDDDDD','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (12,0,0,'','normal','','2000-03-13 16:14:31',20000321114747,'','','All','P2','AAAAA','PC',3,'2.00 CD - Pre','kkkkkkkkkkk lllllllllll','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (13,0,0,'','normal','','2000-03-15 16:20:44',20000321114747,'','','other','P2','TestProduct','Other',3,'other','TestComponent','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (14,0,0,'','blocker','','2000-03-15 18:13:47',20000321114747,'','','All','P1','AAAAA','PC',3,'2.00 CD - Pre','BBBBBBBBBBBBB - generic','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (15,0,0,'','minor','','2000-03-16 18:03:28',20000321114747,'','','All','P2','CCC/CCCCCC','Other',5,'7.00','DDDDDDDDD','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (16,0,0,'','normal','','2000-03-16 18:33:41',20000321114747,'','','All','P2','CCC/CCCCCC','Other',5,'7.00','Administration','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (17,0,0,'','normal','','2000-03-16 18:34:18',20000321114747,'','','All','P2','CCC/CCCCCC','Other',5,'7.00','Administration','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (18,0,0,'','normal','','2000-03-16 18:34:56',20000321114747,'','','All','P2','CCC/CCCCCC','Other',5,'7.00','Administration','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (19,0,0,'','enhancement','','2000-03-16 18:35:34',20000321114747,'','','All','P2','CCC/CCCCCC','Other',5,'7.00','Administration','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (20,0,0,'','enhancement','','2000-03-16 18:36:23',20000321114747,'','','All','P2','CCC/CCCCCC','Other',5,'7.00','Administration','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (21,0,0,'','enhancement','','2000-03-16 18:37:23',20000321114747,'','','All','P2','CCC/CCCCCC','Other',5,'7.00','Administration','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (22,0,0,'','enhancement','','2000-03-16 18:38:16',20000321114747,'','','All','P2','CCC/CCCCCC','Other',5,'7.00','Administration','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (23,0,0,'','normal','','2000-03-16 18:58:12',20000321114747,'','','All','P2','CCC/CCCCCC','Other',5,'7.00','DDDDDDDDD','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (24,0,0,'','normal','','2000-03-17 11:08:10',20000321114747,'','','All','P2','AAAAAAAA-AAA','PC',3,'2.8','Web Interface','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (25,0,0,'','normal','','2000-03-17 11:10:45',20000321114747,'','','All','P2','AAAAAAAA-AAA','PC',3,'2.8','Web Interface','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (26,0,0,'','normal','','2000-03-17 11:15:47',20000321114747,'','','All','P2','AAAAAAAA-AAA','PC',3,'2.8','Web Interface','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (27,0,0,'','normal','','2000-03-17 17:45:41',20000321114747,'','','All','P2','CCC/CCCCCC','PC',5,'7.00','DDDDDDDDD','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (28,0,0,'','normal','','2000-03-20 09:51:45',20000321114747,'','','Windows NT','P2','TestProduct','PC',8,'other','TestComponent','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
INSERT INTO t1 VALUES (29,0,0,'','normal','','2000-03-20 11:15:09',20000321114747,'','','All','P5','AAAAAAAA-AAA','PC',3,'2.8','Web Interface','','',0,'',0);
Warnings:
Warning 1263 Data truncated for column 'bug_status' at row 1
CREATE TABLE t2 (
value tinytext,
program varchar(64),
@ -593,11 +535,11 @@ a b
explain select t1.a,t2.b from t1,t2 where t1.a=t2.a group by t1.a,t2.b;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using temporary; Using filesort
1 SIMPLE t2 ALL a NULL NULL NULL 4 Using where
1 SIMPLE t2 ALL a NULL NULL NULL 3 Using where
explain select t1.a,t2.b from t1,t2 where t1.a=t2.a group by t1.a,t2.b ORDER BY NULL;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using temporary
1 SIMPLE t2 ALL a NULL NULL NULL 4 Using where
1 SIMPLE t2 ALL a NULL NULL NULL 3 Using where
drop table t1,t2;
create table t1 (a int, b int);
insert into t1 values (1, 4),(10, 40),(1, 4),(10, 43),(1, 4),(10, 41),(1, 4),(10, 43),(1, 4);

View File

@ -167,3 +167,11 @@ handler t1 read first;
a
6
drop table t1;
create table t1(a int, index(a));
insert into t1 values (1), (2), (3);
handler t1 open;
handler t1 read a=(W);
ERROR 42S22: Unknown column 'W' in 'field list'
handler t1 read a=(a);
ERROR HY000: Wrong arguments to HANDLER ... READ
drop table t1;

View File

@ -163,16 +163,10 @@ id select_type table type possible_keys key key_len ref rows Extra
select * from t1 where btn like "q%";
btn
alter table t1 add column new_col char(1) not null, add key (btn,new_col), drop key btn;
update t1 set new_col=btn;
Warnings:
Warning 1263 Data truncated for column 'new_col' at row 1
Warning 1263 Data truncated for column 'new_col' at row 2
Warning 1263 Data truncated for column 'new_col' at row 3
Warning 1263 Data truncated for column 'new_col' at row 4
Warning 1263 Data truncated for column 'new_col' at row 5
update t1 set new_col=left(btn,1);
explain select * from t1 where btn="a";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL btn NULL NULL NULL 14 Using where
1 SIMPLE t1 ALL btn NULL NULL NULL 11 Using where
explain select * from t1 where btn="a" and new_col="a";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref btn btn 11 const,const 10 Using where
@ -203,6 +197,20 @@ a b
INSERT INTO t1 VALUES (1,3);
ERROR 23000: Duplicate entry '3' for key 1
DROP TABLE t1;
CREATE TABLE t1 (
a int default NULL,
key a (a)
) TYPE=HEAP;
INSERT INTO t1 VALUES (10), (10), (10);
EXPLAIN SELECT * FROM t1 WHERE a=10;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref a a 5 const 10 Using where
SELECT * FROM t1 WHERE a=10;
a
10
10
10
DROP TABLE t1;
CREATE TABLE t1 (a int not null, primary key(a)) type=heap;
INSERT into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11);
DELETE from t1 where a < 100;

View File

@ -179,13 +179,7 @@ id select_type table type possible_keys key key_len ref rows Extra
select * from t1 where btn like "q%";
btn
alter table t1 add column new_col char(1) not null, add key using BTREE (btn,new_col), drop key btn;
update t1 set new_col=btn;
Warnings:
Warning 1263 Data truncated for column 'new_col' at row 1
Warning 1263 Data truncated for column 'new_col' at row 2
Warning 1263 Data truncated for column 'new_col' at row 3
Warning 1263 Data truncated for column 'new_col' at row 4
Warning 1263 Data truncated for column 'new_col' at row 5
update t1 set new_col=left(btn,1);
explain select * from t1 where btn="a";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref btn btn 10 const 1 Using where

View File

@ -163,16 +163,10 @@ id select_type table type possible_keys key key_len ref rows Extra
select * from t1 where btn like "q%";
btn
alter table t1 add column new_col char(1) not null, add key using HASH (btn,new_col), drop key btn;
update t1 set new_col=btn;
Warnings:
Warning 1263 Data truncated for column 'new_col' at row 1
Warning 1263 Data truncated for column 'new_col' at row 2
Warning 1263 Data truncated for column 'new_col' at row 3
Warning 1263 Data truncated for column 'new_col' at row 4
Warning 1263 Data truncated for column 'new_col' at row 5
update t1 set new_col=left(btn,1);
explain select * from t1 where btn="a";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL btn NULL NULL NULL 14 Using where
1 SIMPLE t1 ALL btn NULL NULL NULL 11 Using where
explain select * from t1 where btn="a" and new_col="a";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref btn btn 11 const,const 10 Using where

View File

@ -1,4 +1,5 @@
drop table if exists t1,t2,t3;
drop database if exists mysqltest;
create table t1 (id int unsigned not null auto_increment, code tinyint unsigned not null, name char(20) not null, primary key (id), key (code), unique (name)) type=innodb;
insert into t1 (code, name) values (1, 'Tim'), (1, 'Monty'), (2, 'David'), (2, 'Erik'), (3, 'Sasha'), (3, 'Jeremy'), (4, 'Matt');
select id, code, name from t1 order by id;
@ -138,6 +139,15 @@ id parent_id level
1008 102 2
1010 102 2
1015 102 2
explain select level from t1 where level=1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref level level 1 const # Using where; Using index
explain select level,id from t1 where level=1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref level level 1 const # Using where; Using index
explain select level,id,parent_id from t1 where level=1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref level level 1 const # Using where
select level,id from t1 where level=1;
level id
1 1002
@ -156,7 +166,7 @@ level id parent_id
1 1007 101
optimize table t1;
Table Op Msg_type Msg_text
test.t1 optimize error The storage engine for the table doesn't support optimize
test.t1 optimize status OK
show keys from t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t1 0 PRIMARY 1 id A # NULL NULL BTREE
@ -180,7 +190,7 @@ create table t1 (a int) type=innodb;
insert into t1 values (1), (2);
optimize table t1;
Table Op Msg_type Msg_text
test.t1 optimize error The storage engine for the table doesn't support optimize
test.t1 optimize status OK
delete from t1 where a = 1;
select * from t1;
a
@ -202,7 +212,7 @@ Table Op Msg_type Msg_text
test.t1 analyze status OK
show keys from t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t1 1 skr 1 a A 3 NULL NULL YES BTREE
t1 1 skr 1 a A # NULL NULL YES BTREE
drop table t1;
create table t1 (a int,b varchar(20),key(a)) type=innodb;
insert into t1 values (1,""), (2,"testing");
@ -345,12 +355,12 @@ CREATE TABLE t1 (a int not null, b int not null,c int not null,
key(a),primary key(a,b), unique(c),key(a),unique(b));
show index from t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t1 0 PRIMARY 1 a A NULL NULL NULL BTREE
t1 0 PRIMARY 2 b A 0 NULL NULL BTREE
t1 0 c 1 c A 0 NULL NULL BTREE
t1 0 b 1 b A 0 NULL NULL BTREE
t1 1 a 1 a A NULL NULL NULL BTREE
t1 1 a_2 1 a A NULL NULL NULL BTREE
t1 0 PRIMARY 1 a A # NULL NULL BTREE
t1 0 PRIMARY 2 b A # NULL NULL BTREE
t1 0 c 1 c A # NULL NULL BTREE
t1 0 b 1 b A # NULL NULL BTREE
t1 1 a 1 a A # NULL NULL BTREE
t1 1 a_2 1 a A # NULL NULL BTREE
drop table t1;
create table t1 (col1 int not null, col2 char(4) not null, primary key(col1));
alter table t1 type=innodb;
@ -586,6 +596,9 @@ id parent_id level
1009 102 2
1025 102 2
1016 102 2
explain select level from t1 where level=1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref level level 1 const # Using where; Using index
select level,id from t1 where level=1;
level id
1 1004
@ -712,10 +725,10 @@ world 2
hello 1
optimize table t1;
Table Op Msg_type Msg_text
test.t1 optimize error The storage engine for the table doesn't support optimize
test.t1 optimize status OK
show keys from t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t1 0 PRIMARY 1 a A 2 NULL NULL BTREE
t1 0 PRIMARY 1 a A # NULL NULL BTREE
drop table t1;
create table t1 (i int, j int ) TYPE=innodb;
insert into t1 values (1,2);
@ -747,7 +760,7 @@ create table t1 (a int primary key,b int, c int, d int, e int, f int, g int, h
insert into t1 values (1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1);
explain select * from t1 where a > 0 and a < 50;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 1 Using where
1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL # Using where
drop table t1;
create table t1 (id int NOT NULL,id2 int NOT NULL,id3 int NOT NULL,dummy1 char(30),primary key (id,id2),index index_id3 (id3)) type=innodb;
insert into t1 values (0,0,0,'ABCDEFGHIJ'),(2,2,2,'BCDEFGHIJK'),(1,1,1,'CDEFGHIJKL');
@ -788,13 +801,13 @@ id id3
UNLOCK TABLES;
DROP TABLE t1;
create table t1 (a char(20), unique (a(5))) type=innodb;
ERROR HY000: Incorrect sub part key. The used key part isn't a string, the used length is longer than the key part or the storage engine doesn't support unique sub keys
drop table t1;
create table t1 (a char(20), index (a(5))) type=innodb;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` char(20) default NULL,
KEY `a` (`a`)
KEY `a` (`a`(5))
) TYPE=InnoDB CHARSET=latin1
drop table t1;
create temporary table t1 (a int not null auto_increment, primary key(a)) type=innodb;
@ -881,28 +894,28 @@ create table t1 (a int not null, b int not null, c int not null, primary key (a)
insert into t1 values (3,3,3),(1,1,1),(2,2,2),(4,4,4);
explain select * from t1 order by a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL PRIMARY 4 NULL 4
1 SIMPLE t1 index NULL PRIMARY 4 NULL #
explain select * from t1 order by b;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL b 4 NULL 4
1 SIMPLE t1 index NULL b 4 NULL #
explain select * from t1 order by c;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using filesort
1 SIMPLE t1 ALL NULL NULL NULL NULL # Using filesort
explain select a from t1 order by a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL PRIMARY 4 NULL 4 Using index
1 SIMPLE t1 index NULL PRIMARY 4 NULL # Using index
explain select b from t1 order by b;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL b 4 NULL 4 Using index
1 SIMPLE t1 index NULL b 4 NULL # Using index
explain select a,b from t1 order by b;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL b 4 NULL 4 Using index
1 SIMPLE t1 index NULL b 4 NULL # Using index
explain select a,b from t1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL b 4 NULL 4 Using index
1 SIMPLE t1 index NULL b 4 NULL # Using index
explain select a,b,c from t1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 4
1 SIMPLE t1 ALL NULL NULL NULL NULL #
drop table t1;
create table t1 (t int not null default 1, key (t)) type=innodb;
desc t1;
@ -1249,11 +1262,11 @@ count(*)
29267
explain select * from t1 where c between 1 and 10000;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range c c 5 NULL 1 Using where
1 SIMPLE t1 range c c 5 NULL # Using where
update t1 set c=a;
explain select * from t1 where c between 1 and 10000;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL c NULL NULL NULL 29537 Using where
1 SIMPLE t1 ALL c NULL NULL NULL # Using where
drop table t1,t2;
create table t1 (id int primary key auto_increment, fk int, index index_fk (fk)) type=innodb;
insert into t1 (id) values (null),(null),(null),(null),(null);
@ -1322,10 +1335,10 @@ SELECT t2.id, t1.label FROM t2 INNER JOIN
(SELECT t1.id_object as id_object FROM t1 WHERE t1.label LIKE '%test%') AS lbl
ON (t2.id = lbl.id_object) INNER JOIN t1 ON (t2.id = t1.id_object);
id label
3382 Fournisseur Test
102 Fournisseur Test
1794 Fournisseur Test
1822 Fournisseur Test
3524 Fournisseur Test
3382 Test
102 Le Pekin (Test)
1794 Test de resto
1822 Test 3
3524 Societe Test
3525 Fournisseur Test
drop table t1,t2;

View File

@ -58,6 +58,18 @@ skr 2
test 1
test 2
drop table t1;
create table t1 (id int NOT NULL DEFAULT 8);
insert into t1 values(NULL);
ERROR 23000: Column 'id' cannot be null
insert into t1 values (1), (NULL), (2);
Warnings:
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'id' at row 2
select * from t1;
id
1
0
2
drop table t1;
drop database if exists test_$1;
create database test_$1;
use test_$1;

View File

@ -64,7 +64,7 @@ bulk_insert_buffer_size 8388608
INSERT INTO t1 (numeropost,icone,contenu,pseudo,date,signature,ip)
SELECT 1718,icone,contenu,pseudo,date,signature,ip FROM t2
WHERE numeropost=9 ORDER BY numreponse ASC;
DROP TABLE IF EXISTS t1,t2;
DROP TABLE t1,t2;
create table t1(a int, unique(a));
insert into t1 values(2);
create table t2(a int);
@ -76,3 +76,517 @@ show binlog events;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 4 Start 1 4 Server ver: VERSION, Binlog ver: 3
drop table t1, t2;
create table t1 (a int not null);
create table t2 (a int not null);
insert into t1 values (1);
insert into t1 values (a+2);
insert into t1 values (a+3);
insert into t1 values (4),(a+5);
insert into t1 select * from t1;
select * from t1;
a
1
2
3
4
5
1
2
3
4
5
insert into t1 select * from t1 as t2;
select * from t1;
a
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
insert into t2 select * from t1 as t2;
select * from t1;
a
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
insert into t1 select t2.a from t1,t2;
select * from t1;
a
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
insert into t1 select * from t1,t1;
ERROR 42000: Not unique table/alias: 't1'
drop table t1,t2;
create table t1 (a int not null primary key, b char(10));
create table t2 (a int not null, b char(10));
insert into t1 values (1,"t1:1"),(3,"t1:3");
insert into t2 values (2,"t2:2"), (3,"t2:3");
insert into t1 select * from t2;
ERROR 23000: Duplicate entry '3' for key 1
select * from t1;
a b
1 t1:1
3 t1:3
2 t2:2
replace into t1 select * from t2;
select * from t1;
a b
1 t1:1
3 t2:3
2 t2:2
drop table t1,t2;
CREATE TABLE t1 ( USID INTEGER UNSIGNED, ServerID TINYINT UNSIGNED, State ENUM ('unknown', 'Access-Granted', 'Session-Active', 'Session-Closed' ) NOT NULL DEFAULT 'unknown', SessionID CHAR(32), User CHAR(32) NOT NULL DEFAULT '<UNKNOWN>', NASAddr INTEGER UNSIGNED, NASPort INTEGER UNSIGNED, NASPortType INTEGER UNSIGNED, ConnectSpeed INTEGER UNSIGNED, CarrierType CHAR(32), CallingStationID CHAR(32), CalledStationID CHAR(32), AssignedAddr INTEGER UNSIGNED, SessionTime INTEGER UNSIGNED, PacketsIn INTEGER UNSIGNED, OctetsIn INTEGER UNSIGNED, PacketsOut INTEGER UNSIGNED, OctetsOut INTEGER UNSIGNED, TerminateCause INTEGER UNSIGNED, UnauthTime TINYINT UNSIGNED, AccessRequestTime DATETIME, AcctStartTime DATETIME, AcctLastTime DATETIME, LastModification TIMESTAMP NOT NULL);
CREATE TABLE t2 ( USID INTEGER UNSIGNED AUTO_INCREMENT, ServerID TINYINT UNSIGNED, State ENUM ('unknown', 'Access-Granted', 'Session-Active', 'Session-Closed' ) NOT NULL DEFAULT 'unknown', SessionID CHAR(32), User TEXT NOT NULL, NASAddr INTEGER UNSIGNED, NASPort INTEGER UNSIGNED, NASPortType INTEGER UNSIGNED, ConnectSpeed INTEGER UNSIGNED, CarrierType CHAR(32), CallingStationID CHAR(32), CalledStationID CHAR(32), AssignedAddr INTEGER UNSIGNED, SessionTime INTEGER UNSIGNED, PacketsIn INTEGER UNSIGNED, OctetsIn INTEGER UNSIGNED, PacketsOut INTEGER UNSIGNED, OctetsOut INTEGER UNSIGNED, TerminateCause INTEGER UNSIGNED, UnauthTime TINYINT UNSIGNED, AccessRequestTime DATETIME, AcctStartTime DATETIME, AcctLastTime DATETIME, LastModification TIMESTAMP NOT NULL, INDEX(USID,ServerID,NASAddr,SessionID), INDEX(AssignedAddr));
INSERT INTO t1 VALUES (39,42,'Access-Granted','46','491721000045',2130706433,17690,NULL,NULL,'Localnet','491721000045','49172200000',754974766,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2003-07-18 00:11:21',NULL,NULL,20030718001121);
INSERT INTO t2 SELECT USID, ServerID, State, SessionID, User, NASAddr, NASPort, NASPortType, ConnectSpeed, CarrierType, CallingStationID, CalledStationID, AssignedAddr, SessionTime, PacketsIn, OctetsIn, PacketsOut, OctetsOut, TerminateCause, UnauthTime, AccessRequestTime, AcctStartTime, AcctLastTime, LastModification from t1 LIMIT 1;
drop table t1,t2;

View File

@ -104,9 +104,7 @@ KEY category (category,county,state)
INSERT INTO t2 VALUES (3,2,11,12,5400,7800);
INSERT INTO t2 VALUES (4,2,25,12,6500,11200);
INSERT INTO t2 VALUES (5,1,37,6,10000,12000);
select a.id, b.category as catid, b.state as stateid, b.county as
countyid from t1 a, t2 b where (a.token =
'a71250b7ed780f6ef3185bfffe027983') and (a.count = b.id);
select a.id, b.category as catid, b.state as stateid, b.county as countyid from t1 a, t2 b ignore index (primary) where (a.token ='a71250b7ed780f6ef3185bfffe027983') and (a.count = b.id);
id catid stateid countyid
27 2 12 11
28 2 12 11

View File

@ -657,3 +657,11 @@ i i i
1 NULL NULL
2 2 2
drop table t1,t2,t3;
create table t1 (f1 integer,f2 integer,f3 integer);
create table t2 (f2 integer,f4 integer);
create table t3 (f3 integer,f5 integer);
select * from t1
left outer join t2 using (f2)
left outer join t3 using (f3);
ERROR 42S22: Unknown column 'test.t2.f3' in 'on clause'
drop table t1,t2,t3;

View File

@ -1,4 +1,5 @@
drop table if exists t1,t2,t3;
SET SQL_WARNINGS=1;
CREATE TABLE t1 (
ID CHAR(32) NOT NULL,
name CHAR(32) NOT NULL,
@ -33,10 +34,10 @@ INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','N','N','N','N');
INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','N','N','N','N');
INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','','','','');
Warnings:
Warning 1263 Data truncated for column 'transityes' at row 1
Warning 1263 Data truncated for column 'shopsyes' at row 1
Warning 1263 Data truncated for column 'schoolsyes' at row 1
Warning 1263 Data truncated for column 'petsyes' at row 1
Warning 1264 Data truncated for column 'transityes' at row 1
Warning 1264 Data truncated for column 'shopsyes' at row 1
Warning 1264 Data truncated for column 'schoolsyes' at row 1
Warning 1264 Data truncated for column 'petsyes' at row 1
INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','Y','Y','Y','Y');
INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','Y','Y','Y','Y');
INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','Y','Y','Y','Y');
@ -94,13 +95,9 @@ INSERT t1 VALUES(NULL,'/');
INSERT t1 VALUES(NULL,'[T,U]_axpby');
SELECT * FROM t1 WHERE name='[T,U]_axpy';
name_id name
Warnings:
Warning 1263 Data truncated for column 'name' at row 1
SELECT * FROM t1 WHERE name='[T,U]_axpby';
name_id name
2 [T,U]_axpby
Warnings:
Warning 1263 Data truncated for column 'name' at row 1
create table t2
(
name_id int not null auto_increment,
@ -159,8 +156,8 @@ CREATE TABLE t1 (c CHAR(10) NOT NULL,i INT NOT NULL AUTO_INCREMENT,
UNIQUE (c,i));
INSERT INTO t1 (c) VALUES (NULL),(NULL);
Warnings:
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'c' at row 1
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'c' at row 2
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'c' at row 1
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'c' at row 2
SELECT * FROM t1;
c i
1

View File

@ -35,7 +35,7 @@ SELECT @@small.key_buffer_size;
1048576
SELECT @@medium.key_buffer_size;
@@medium.key_buffer_size
4194304
0
SET @@global.key_buffer_size=@save_key_buffer;
SELECT @@default.key_buffer_size;
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'default.key_buffer_size' at line 1

View File

@ -36,7 +36,7 @@ a a a a
explain select t1.*,t2.* from t1,t1 as t2 where t1.A=t2.B;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL a NULL NULL NULL 5
1 SIMPLE t2 ALL b NULL NULL NULL 5 Using where
1 SIMPLE t2 ALL b NULL NULL NULL 4 Using where
select t1.*,t2.* from t1,t1 as t2 where t1.A=t2.B order by binary t1.a,t2.a;
a b a b
A B a a

View File

@ -2,12 +2,12 @@ drop table if exists t1;
create table t1 (a date, b date, c date not null, d date);
load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ',';
Warnings:
Warning 1263 Data truncated for column 'a' at row 1
Warning 1263 Data truncated for column 'c' at row 1
Warning 1263 Data truncated for column 'd' at row 1
Warning 1263 Data truncated for column 'a' at row 2
Warning 1263 Data truncated for column 'b' at row 2
Warning 1263 Data truncated for column 'd' at row 2
Warning 1264 Data truncated for column 'a' at row 1
Warning 1264 Data truncated for column 'c' at row 1
Warning 1264 Data truncated for column 'd' at row 1
Warning 1264 Data truncated for column 'a' at row 2
Warning 1264 Data truncated for column 'b' at row 2
Warning 1264 Data truncated for column 'd' at row 2
load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ',' IGNORE 2 LINES;
SELECT * from t1;
a b c d
@ -18,10 +18,10 @@ a b c d
truncate table t1;
load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ',' LINES STARTING BY ',' (b,c,d);
Warnings:
Warning 1263 Data truncated for column 'c' at row 1
Warning 1263 Data truncated for column 'd' at row 1
Warning 1263 Data truncated for column 'b' at row 2
Warning 1263 Data truncated for column 'd' at row 2
Warning 1264 Data truncated for column 'c' at row 1
Warning 1264 Data truncated for column 'd' at row 1
Warning 1264 Data truncated for column 'b' at row 2
Warning 1264 Data truncated for column 'd' at row 2
SELECT * from t1;
a b c d
NULL NULL 0000-00-00 0000-00-00

View File

@ -0,0 +1,8 @@
drop table if exists t1;
create table t1(a int) type=innodb;
lock tables t1 write;
insert into t1 values(10);
select * from t1;
a
10
drop table t1;

View File

@ -610,3 +610,17 @@ AND file_code = '0000000115' LIMIT 1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 const PRIMARY,files PRIMARY 33 const,const 1
DROP TABLE t2, t1;
create table t1 (x int, y int, index xy(x, y));
create table t2 (x int, y int, index xy(x, y));
create table t3 (x int, y int, index xy(x, y)) type=merge union=(t1,t2);
insert into t1 values(1, 2);
insert into t2 values(1, 3);
select * from t3 where x = 1 and y < 5 order by y;
x y
1 2
1 3
select * from t3 where x = 1 and y < 5 order by y desc;
x y
1 3
1 2
drop table t1,t2,t3;

View File

@ -1,4 +1,5 @@
drop table if exists t1,t2;
SET SQL_WARNINGS=1;
CREATE TABLE t1 (
STRING_DATA char(255) default NULL,
KEY string_data (STRING_DATA)
@ -14,34 +15,6 @@ Table Op Msg_type Msg_text
test.t1 check status OK
drop table t1;
create table t1 (a tinyint not null auto_increment, b blob not null, primary key (a));
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
check table t1;
Table Op Msg_type Msg_text
test.t1 check status OK
@ -361,12 +334,12 @@ t1 1 c_2 1 c A 5 NULL NULL YES BTREE
t1 1 c_2 2 a A 5 NULL NULL BTREE
explain select * from t1,t2 where t1.a=t2.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL a NULL NULL NULL 5
1 SIMPLE t2 ALL a NULL NULL NULL 2 Using where
1 SIMPLE t2 ALL a NULL NULL NULL 2
1 SIMPLE t1 ALL a NULL NULL NULL 4 Using where
explain select * from t1,t2 force index(a) where t1.a=t2.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL a NULL NULL NULL 2
1 SIMPLE t1 ALL a NULL NULL NULL 5 Using where
1 SIMPLE t1 ALL a NULL NULL NULL 4 Using where
explain select * from t1 force index(a),t2 force index(a) where t1.a=t2.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL a NULL NULL NULL 2
@ -377,8 +350,8 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref b b 5 test.t2.b 1 Using where
explain select * from t1,t2 force index(c) where t1.a=t2.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL a NULL NULL NULL 5
1 SIMPLE t2 ALL NULL NULL NULL NULL 2 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 2
1 SIMPLE t1 ALL a NULL NULL NULL 4 Using where
explain select * from t1 where a=0 or a=2;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL a NULL NULL NULL 5 Using where

View File

@ -77,42 +77,42 @@ CREATE TABLE t1 (a varchar(16) NOT NULL, b smallint(6) NOT NULL, c datetime NOT
INSERT INTO t1 SET a = "", d= "2003-01-14 03:54:55";
UPDATE t1 SET d=1/NULL;
Warnings:
Warning 1263 Data truncated for column 'd' at row 1
Warning 1264 Data truncated for column 'd' at row 1
UPDATE t1 SET d=NULL;
Warnings:
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'd' at row 1
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'd' at row 1
INSERT INTO t1 (a) values (null);
ERROR 23000: Column 'a' cannot be null
INSERT INTO t1 (a) values (1/null);
ERROR 23000: Column 'a' cannot be null
INSERT INTO t1 (a) values (null),(null);
Warnings:
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'a' at row 1
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'a' at row 2
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'a' at row 1
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'a' at row 2
INSERT INTO t1 (b) values (null);
ERROR 23000: Column 'b' cannot be null
INSERT INTO t1 (b) values (1/null);
ERROR 23000: Column 'b' cannot be null
INSERT INTO t1 (b) values (null),(null);
Warnings:
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'b' at row 1
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'b' at row 2
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'b' at row 1
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'b' at row 2
INSERT INTO t1 (c) values (null);
ERROR 23000: Column 'c' cannot be null
INSERT INTO t1 (c) values (1/null);
ERROR 23000: Column 'c' cannot be null
INSERT INTO t1 (c) values (null),(null);
Warnings:
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'c' at row 1
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'c' at row 2
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'c' at row 1
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'c' at row 2
INSERT INTO t1 (d) values (null);
ERROR 23000: Column 'd' cannot be null
INSERT INTO t1 (d) values (1/null);
ERROR 23000: Column 'd' cannot be null
INSERT INTO t1 (d) values (null),(null);
Warnings:
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'd' at row 1
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'd' at row 2
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'd' at row 1
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'd' at row 2
select * from t1;
a b c d
0 0000-00-00 00:00:00 0

View File

@ -153,7 +153,7 @@ a b
7 NULL
explain select * from t1 where (a = 7 or a is null) and (b=7 or b is null);
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range a,b a 10 NULL 4 Using where; Using index
1 SIMPLE t1 range a,b a 10 NULL 3 Using where; Using index
select * from t1 where (a = 7 or a is null) and (b=7 or b is null);
a b
NULL 7
@ -337,7 +337,7 @@ index (id2)
);
insert into t1 values(null,null),(1,1);
Warnings:
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'id2' at row 1
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'id2' at row 1
select * from t1;
id id2
NULL 0

View File

@ -333,10 +333,10 @@ a b c
1 NULL NULL
alter table t1 modify b int not null, modify c varchar(10) not null;
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warning 1263 Data truncated for column 'c' at row 1
Warning 1263 Data truncated for column 'b' at row 2
Warning 1263 Data truncated for column 'c' at row 3
Warning 1264 Data truncated for column 'b' at row 1
Warning 1264 Data truncated for column 'c' at row 1
Warning 1264 Data truncated for column 'b' at row 2
Warning 1264 Data truncated for column 'c' at row 3
explain select * from t1 order by a, b, c;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL a 18 NULL 11 Using index

View File

@ -2,8 +2,8 @@ flush query cache;
flush query cache;
reset query cache;
flush status;
drop table if exists t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20,t21,t22,t23,t24,t25,t26,t27,t28,t29,t30,t31,t32,t33,t34,t35,t36,t37,t38,t39,t40,t41,t42,t43,t44,t45,t46,t47,t48,t49,t50,t51,t52,t53,t54,t55,t56,t57,t58,t59,t60,t61,t62,t63,t64,t65,t66,t67,t68,t69,t70,t71,t72,t73,t74,t75,t76,t77,t78,t79,t80,t81,t82,t83,t84,t85,t86,t87,t88,t89,t90,t91,t92,t93,t94,t95,t96,t97,t98,t99,t100,t101,t102,t103,t104,t105,t106,t107,t108,t109,t110,t111,t112,t113,t114,t115,t116,t117,t118,t119,t120,t121,t122,t123,t124,t125,t126,t127,t128,t129,t130,t131,t132,t133,t134,t135,t136,t137,t138,t139,t140,t141,t142,t143,t144,t145,t146,t147,t148,t149,t150,t151,t152,t153,t154,t155,t156,t157,t158,t159,t160,t161,t162,t163,t164,t165,t166,t167,t168,t169,t170,t171,t172,t173,t174,t175,t176,t177,t178,t179,t180,t181,t182,t183,t184,t185,t186,t187,t188,t189,t190,t191,t192,t193,t194,t195,t196,t197,t198,t199,t200,t201,t202,t203,t204,t205,t206,t207,t208,t209,t210,t211,t212,t213,t214,t215,t216,t217,t218,t219,t220,t221,t222,t223,t224,t225,t226,t227,t228,t229,t230,t231,t232,t233,t234,t235,t236,t237,t238,t239,t240,t241,t242,t243,t244,t245,t246,t247,t248,t249,t250,t251,t252,t253,t254,t255,t256,t00,mysqltest.t1;
drop database if exists mysqltest;
drop table if exists t1,t2,t3,t11,t21, mysqltest.t1;
create table t1 (a int not null);
insert into t1 values (1),(2),(3);
select * from t1;
@ -358,7 +358,7 @@ show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 0
drop table t1,t2;
create database if not exists mysqltest;
create database mysqltest;
create table mysqltest.t1 (i int not null auto_increment, a int, primary key (i));
insert into mysqltest.t1 (a) values (1);
select * from mysqltest.t1 where i is null;
@ -374,22 +374,23 @@ drop database mysqltest;
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 0
create table t1 (a char(1) not null);
insert into t1 values("<22>");
create table t1 (a char(1) not null collate koi8r_general_ci);
insert into t1 values(_koi8r"<22>");
set CHARACTER SET koi8r;
select * from t1;
a
<EFBFBD>
set CHARACTER SET cp1251_koi8;
select * from t1;
a
<EFBFBD>
<EFBFBD>
set CHARACTER SET DEFAULT;
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 1
Qcache_queries_in_cache 2
show status like "Qcache_hits";
Variable_name Value
Qcache_hits 5
Qcache_hits 4
drop table t1;
create database if not exists mysqltest;
create table mysqltest.t1 (i int not null);
@ -415,7 +416,7 @@ Variable_name Value
Qcache_queries_in_cache 2
show status like "Qcache_hits";
Variable_name Value
Qcache_hits 7
Qcache_hits 6
drop database mysqltest;
drop table t1;
create table t1 (i int not null);
@ -429,7 +430,7 @@ FOUND_ROWS()
4
show status like "Qcache_hits";
Variable_name Value
Qcache_hits 7
Qcache_hits 6
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 1
@ -441,7 +442,7 @@ FOUND_ROWS()
1
show status like "Qcache_hits";
Variable_name Value
Qcache_hits 7
Qcache_hits 6
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 2
@ -454,7 +455,7 @@ FOUND_ROWS()
4
show status like "Qcache_hits";
Variable_name Value
Qcache_hits 8
Qcache_hits 7
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 2
@ -466,7 +467,7 @@ FOUND_ROWS()
1
show status like "Qcache_hits";
Variable_name Value
Qcache_hits 9
Qcache_hits 8
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 2
@ -535,7 +536,7 @@ a
3
show status like "Qcache_hits";
Variable_name Value
Qcache_hits 12
Qcache_hits 11
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 2
@ -552,7 +553,7 @@ a
3
show status like "Qcache_hits";
Variable_name Value
Qcache_hits 13
Qcache_hits 12
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 2
@ -561,6 +562,15 @@ set GLOBAL query_cache_min_res_unit=default;
show global variables like "query_cache_min_res_unit";
Variable_name Value
query_cache_min_res_unit 4096
create table t1 (a int not null);
insert into t1 values (1);
select "aaa" from t1;
aaa
aaa
select "AAA" from t1;
AAA
AAA
drop table t1;
create table t1 (a int);
set GLOBAL query_cache_size=1000;
show global variables like "query_cache_size";
@ -699,3 +709,536 @@ Variable_name Value
Qcache_queries_in_cache 2
SET OPTION SQL_SELECT_LIMIT=DEFAULT;
drop table t1;
flush status;
create table t0(a int);
create table t1(a int);
create table t2(a int);
create table t3(a int);
create table t4(a int);
create table t5(a int);
create table t6(a int);
create table t7(a int);
create table t8(a int);
create table t9(a int);
create table t10(a int);
create table t11(a int);
create table t12(a int);
create table t13(a int);
create table t14(a int);
create table t15(a int);
create table t16(a int);
create table t17(a int);
create table t18(a int);
create table t19(a int);
create table t20(a int);
create table t21(a int);
create table t22(a int);
create table t23(a int);
create table t24(a int);
create table t25(a int);
create table t26(a int);
create table t27(a int);
create table t28(a int);
create table t29(a int);
create table t30(a int);
create table t31(a int);
create table t32(a int);
create table t33(a int);
create table t34(a int);
create table t35(a int);
create table t36(a int);
create table t37(a int);
create table t38(a int);
create table t39(a int);
create table t40(a int);
create table t41(a int);
create table t42(a int);
create table t43(a int);
create table t44(a int);
create table t45(a int);
create table t46(a int);
create table t47(a int);
create table t48(a int);
create table t49(a int);
create table t50(a int);
create table t51(a int);
create table t52(a int);
create table t53(a int);
create table t54(a int);
create table t55(a int);
create table t56(a int);
create table t57(a int);
create table t58(a int);
create table t59(a int);
create table t60(a int);
create table t61(a int);
create table t62(a int);
create table t63(a int);
create table t64(a int);
create table t65(a int);
create table t66(a int);
create table t67(a int);
create table t68(a int);
create table t69(a int);
create table t70(a int);
create table t71(a int);
create table t72(a int);
create table t73(a int);
create table t74(a int);
create table t75(a int);
create table t76(a int);
create table t77(a int);
create table t78(a int);
create table t79(a int);
create table t80(a int);
create table t81(a int);
create table t82(a int);
create table t83(a int);
create table t84(a int);
create table t85(a int);
create table t86(a int);
create table t87(a int);
create table t88(a int);
create table t89(a int);
create table t90(a int);
create table t91(a int);
create table t92(a int);
create table t93(a int);
create table t94(a int);
create table t95(a int);
create table t96(a int);
create table t97(a int);
create table t98(a int);
create table t99(a int);
create table t100(a int);
create table t101(a int);
create table t102(a int);
create table t103(a int);
create table t104(a int);
create table t105(a int);
create table t106(a int);
create table t107(a int);
create table t108(a int);
create table t109(a int);
create table t110(a int);
create table t111(a int);
create table t112(a int);
create table t113(a int);
create table t114(a int);
create table t115(a int);
create table t116(a int);
create table t117(a int);
create table t118(a int);
create table t119(a int);
create table t120(a int);
create table t121(a int);
create table t122(a int);
create table t123(a int);
create table t124(a int);
create table t125(a int);
create table t126(a int);
create table t127(a int);
create table t128(a int);
create table t129(a int);
create table t130(a int);
create table t131(a int);
create table t132(a int);
create table t133(a int);
create table t134(a int);
create table t135(a int);
create table t136(a int);
create table t137(a int);
create table t138(a int);
create table t139(a int);
create table t140(a int);
create table t141(a int);
create table t142(a int);
create table t143(a int);
create table t144(a int);
create table t145(a int);
create table t146(a int);
create table t147(a int);
create table t148(a int);
create table t149(a int);
create table t150(a int);
create table t151(a int);
create table t152(a int);
create table t153(a int);
create table t154(a int);
create table t155(a int);
create table t156(a int);
create table t157(a int);
create table t158(a int);
create table t159(a int);
create table t160(a int);
create table t161(a int);
create table t162(a int);
create table t163(a int);
create table t164(a int);
create table t165(a int);
create table t166(a int);
create table t167(a int);
create table t168(a int);
create table t169(a int);
create table t170(a int);
create table t171(a int);
create table t172(a int);
create table t173(a int);
create table t174(a int);
create table t175(a int);
create table t176(a int);
create table t177(a int);
create table t178(a int);
create table t179(a int);
create table t180(a int);
create table t181(a int);
create table t182(a int);
create table t183(a int);
create table t184(a int);
create table t185(a int);
create table t186(a int);
create table t187(a int);
create table t188(a int);
create table t189(a int);
create table t190(a int);
create table t191(a int);
create table t192(a int);
create table t193(a int);
create table t194(a int);
create table t195(a int);
create table t196(a int);
create table t197(a int);
create table t198(a int);
create table t199(a int);
create table t200(a int);
create table t201(a int);
create table t202(a int);
create table t203(a int);
create table t204(a int);
create table t205(a int);
create table t206(a int);
create table t207(a int);
create table t208(a int);
create table t209(a int);
create table t210(a int);
create table t211(a int);
create table t212(a int);
create table t213(a int);
create table t214(a int);
create table t215(a int);
create table t216(a int);
create table t217(a int);
create table t218(a int);
create table t219(a int);
create table t220(a int);
create table t221(a int);
create table t222(a int);
create table t223(a int);
create table t224(a int);
create table t225(a int);
create table t226(a int);
create table t227(a int);
create table t228(a int);
create table t229(a int);
create table t230(a int);
create table t231(a int);
create table t232(a int);
create table t233(a int);
create table t234(a int);
create table t235(a int);
create table t236(a int);
create table t237(a int);
create table t238(a int);
create table t239(a int);
create table t240(a int);
create table t241(a int);
create table t242(a int);
create table t243(a int);
create table t244(a int);
create table t245(a int);
create table t246(a int);
create table t247(a int);
create table t248(a int);
create table t249(a int);
create table t250(a int);
create table t251(a int);
create table t252(a int);
create table t253(a int);
create table t254(a int);
create table t255(a int);
create table t256(a int);
create table t00 (a int) type=MERGE UNION=(t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20,t21,t22,t23,t24,t25,t26,t27,t28,t29,t30,t31,t32,t33,t34,t35,t36,t37,t38,t39,t40,t41,t42,t43,t44,t45,t46,t47,t48,t49,t50,t51,t52,t53,t54,t55,t56,t57,t58,t59,t60,t61,t62,t63,t64,t65,t66,t67,t68,t69,t70,t71,t72,t73,t74,t75,t76,t77,t78,t79,t80,t81,t82,t83,t84,t85,t86,t87,t88,t89,t90,t91,t92,t93,t94,t95,t96,t97,t98,t99,t100,t101,t102,t103,t104,t105,t106,t107,t108,t109,t110,t111,t112,t113,t114,t115,t116,t117,t118,t119,t120,t121,t122,t123,t124,t125,t126,t127,t128,t129,t130,t131,t132,t133,t134,t135,t136,t137,t138,t139,t140,t141,t142,t143,t144,t145,t146,t147,t148,t149,t150,t151,t152,t153,t154,t155,t156,t157,t158,t159,t160,t161,t162,t163,t164,t165,t166,t167,t168,t169,t170,t171,t172,t173,t174,t175,t176,t177,t178,t179,t180,t181,t182,t183,t184,t185,t186,t187,t188,t189,t190,t191,t192,t193,t194,t195,t196,t197,t198,t199,t200,t201,t202,t203,t204,t205,t206,t207,t208,t209,t210,t211,t212,t213,t214,t215,t216,t217,t218,t219,t220,t221,t222,t223,t224,t225,t226,t227,t228,t229,t230,t231,t232,t233,t234,t235,t236,t237,t238,t239,t240,t241,t242,t243,t244,t245,t246,t247,t248,t249,t250,t251,t252,t253,t254,t255,t256) INSERT_METHOD=FIRST;
insert into t0 values (1),(2);
insert into t1 values (1),(2);
insert into t2 values (1),(2);
insert into t3 values (1),(2);
insert into t4 values (1),(2);
insert into t5 values (1),(2);
insert into t6 values (1),(2);
insert into t7 values (1),(2);
insert into t8 values (1),(2);
insert into t9 values (1),(2);
insert into t10 values (1),(2);
insert into t11 values (1),(2);
insert into t12 values (1),(2);
insert into t13 values (1),(2);
insert into t14 values (1),(2);
insert into t15 values (1),(2);
insert into t16 values (1),(2);
insert into t17 values (1),(2);
insert into t18 values (1),(2);
insert into t19 values (1),(2);
insert into t20 values (1),(2);
insert into t21 values (1),(2);
insert into t22 values (1),(2);
insert into t23 values (1),(2);
insert into t24 values (1),(2);
insert into t25 values (1),(2);
insert into t26 values (1),(2);
insert into t27 values (1),(2);
insert into t28 values (1),(2);
insert into t29 values (1),(2);
insert into t30 values (1),(2);
insert into t31 values (1),(2);
insert into t32 values (1),(2);
insert into t33 values (1),(2);
insert into t34 values (1),(2);
insert into t35 values (1),(2);
insert into t36 values (1),(2);
insert into t37 values (1),(2);
insert into t38 values (1),(2);
insert into t39 values (1),(2);
insert into t40 values (1),(2);
insert into t41 values (1),(2);
insert into t42 values (1),(2);
insert into t43 values (1),(2);
insert into t44 values (1),(2);
insert into t45 values (1),(2);
insert into t46 values (1),(2);
insert into t47 values (1),(2);
insert into t48 values (1),(2);
insert into t49 values (1),(2);
insert into t50 values (1),(2);
insert into t51 values (1),(2);
insert into t52 values (1),(2);
insert into t53 values (1),(2);
insert into t54 values (1),(2);
insert into t55 values (1),(2);
insert into t56 values (1),(2);
insert into t57 values (1),(2);
insert into t58 values (1),(2);
insert into t59 values (1),(2);
insert into t60 values (1),(2);
insert into t61 values (1),(2);
insert into t62 values (1),(2);
insert into t63 values (1),(2);
insert into t64 values (1),(2);
insert into t65 values (1),(2);
insert into t66 values (1),(2);
insert into t67 values (1),(2);
insert into t68 values (1),(2);
insert into t69 values (1),(2);
insert into t70 values (1),(2);
insert into t71 values (1),(2);
insert into t72 values (1),(2);
insert into t73 values (1),(2);
insert into t74 values (1),(2);
insert into t75 values (1),(2);
insert into t76 values (1),(2);
insert into t77 values (1),(2);
insert into t78 values (1),(2);
insert into t79 values (1),(2);
insert into t80 values (1),(2);
insert into t81 values (1),(2);
insert into t82 values (1),(2);
insert into t83 values (1),(2);
insert into t84 values (1),(2);
insert into t85 values (1),(2);
insert into t86 values (1),(2);
insert into t87 values (1),(2);
insert into t88 values (1),(2);
insert into t89 values (1),(2);
insert into t90 values (1),(2);
insert into t91 values (1),(2);
insert into t92 values (1),(2);
insert into t93 values (1),(2);
insert into t94 values (1),(2);
insert into t95 values (1),(2);
insert into t96 values (1),(2);
insert into t97 values (1),(2);
insert into t98 values (1),(2);
insert into t99 values (1),(2);
insert into t100 values (1),(2);
insert into t101 values (1),(2);
insert into t102 values (1),(2);
insert into t103 values (1),(2);
insert into t104 values (1),(2);
insert into t105 values (1),(2);
insert into t106 values (1),(2);
insert into t107 values (1),(2);
insert into t108 values (1),(2);
insert into t109 values (1),(2);
insert into t110 values (1),(2);
insert into t111 values (1),(2);
insert into t112 values (1),(2);
insert into t113 values (1),(2);
insert into t114 values (1),(2);
insert into t115 values (1),(2);
insert into t116 values (1),(2);
insert into t117 values (1),(2);
insert into t118 values (1),(2);
insert into t119 values (1),(2);
insert into t120 values (1),(2);
insert into t121 values (1),(2);
insert into t122 values (1),(2);
insert into t123 values (1),(2);
insert into t124 values (1),(2);
insert into t125 values (1),(2);
insert into t126 values (1),(2);
insert into t127 values (1),(2);
insert into t128 values (1),(2);
insert into t129 values (1),(2);
insert into t130 values (1),(2);
insert into t131 values (1),(2);
insert into t132 values (1),(2);
insert into t133 values (1),(2);
insert into t134 values (1),(2);
insert into t135 values (1),(2);
insert into t136 values (1),(2);
insert into t137 values (1),(2);
insert into t138 values (1),(2);
insert into t139 values (1),(2);
insert into t140 values (1),(2);
insert into t141 values (1),(2);
insert into t142 values (1),(2);
insert into t143 values (1),(2);
insert into t144 values (1),(2);
insert into t145 values (1),(2);
insert into t146 values (1),(2);
insert into t147 values (1),(2);
insert into t148 values (1),(2);
insert into t149 values (1),(2);
insert into t150 values (1),(2);
insert into t151 values (1),(2);
insert into t152 values (1),(2);
insert into t153 values (1),(2);
insert into t154 values (1),(2);
insert into t155 values (1),(2);
insert into t156 values (1),(2);
insert into t157 values (1),(2);
insert into t158 values (1),(2);
insert into t159 values (1),(2);
insert into t160 values (1),(2);
insert into t161 values (1),(2);
insert into t162 values (1),(2);
insert into t163 values (1),(2);
insert into t164 values (1),(2);
insert into t165 values (1),(2);
insert into t166 values (1),(2);
insert into t167 values (1),(2);
insert into t168 values (1),(2);
insert into t169 values (1),(2);
insert into t170 values (1),(2);
insert into t171 values (1),(2);
insert into t172 values (1),(2);
insert into t173 values (1),(2);
insert into t174 values (1),(2);
insert into t175 values (1),(2);
insert into t176 values (1),(2);
insert into t177 values (1),(2);
insert into t178 values (1),(2);
insert into t179 values (1),(2);
insert into t180 values (1),(2);
insert into t181 values (1),(2);
insert into t182 values (1),(2);
insert into t183 values (1),(2);
insert into t184 values (1),(2);
insert into t185 values (1),(2);
insert into t186 values (1),(2);
insert into t187 values (1),(2);
insert into t188 values (1),(2);
insert into t189 values (1),(2);
insert into t190 values (1),(2);
insert into t191 values (1),(2);
insert into t192 values (1),(2);
insert into t193 values (1),(2);
insert into t194 values (1),(2);
insert into t195 values (1),(2);
insert into t196 values (1),(2);
insert into t197 values (1),(2);
insert into t198 values (1),(2);
insert into t199 values (1),(2);
insert into t200 values (1),(2);
insert into t201 values (1),(2);
insert into t202 values (1),(2);
insert into t203 values (1),(2);
insert into t204 values (1),(2);
insert into t205 values (1),(2);
insert into t206 values (1),(2);
insert into t207 values (1),(2);
insert into t208 values (1),(2);
insert into t209 values (1),(2);
insert into t210 values (1),(2);
insert into t211 values (1),(2);
insert into t212 values (1),(2);
insert into t213 values (1),(2);
insert into t214 values (1),(2);
insert into t215 values (1),(2);
insert into t216 values (1),(2);
insert into t217 values (1),(2);
insert into t218 values (1),(2);
insert into t219 values (1),(2);
insert into t220 values (1),(2);
insert into t221 values (1),(2);
insert into t222 values (1),(2);
insert into t223 values (1),(2);
insert into t224 values (1),(2);
insert into t225 values (1),(2);
insert into t226 values (1),(2);
insert into t227 values (1),(2);
insert into t228 values (1),(2);
insert into t229 values (1),(2);
insert into t230 values (1),(2);
insert into t231 values (1),(2);
insert into t232 values (1),(2);
insert into t233 values (1),(2);
insert into t234 values (1),(2);
insert into t235 values (1),(2);
insert into t236 values (1),(2);
insert into t237 values (1),(2);
insert into t238 values (1),(2);
insert into t239 values (1),(2);
insert into t240 values (1),(2);
insert into t241 values (1),(2);
insert into t242 values (1),(2);
insert into t243 values (1),(2);
insert into t244 values (1),(2);
insert into t245 values (1),(2);
insert into t246 values (1),(2);
insert into t247 values (1),(2);
insert into t248 values (1),(2);
insert into t249 values (1),(2);
insert into t250 values (1),(2);
insert into t251 values (1),(2);
insert into t252 values (1),(2);
insert into t253 values (1),(2);
insert into t254 values (1),(2);
insert into t255 values (1),(2);
insert into t256 values (1),(2);
select count(*) from t00;
count(*)
514
select count(*) from t00;
count(*)
514
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 1
show status like "Qcache_hits";
Variable_name Value
Qcache_hits 1
delete from t256;
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 0
drop table t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20,t21,t22,t23,t24,t25,t26,t27,t28,t29,t30,t31,t32,t33,t34,t35,t36,t37,t38,t39,t40,t41,t42,t43,t44,t45,t46,t47,t48,t49,t50,t51,t52,t53,t54,t55,t56,t57,t58,t59,t60,t61,t62,t63,t64,t65,t66,t67,t68,t69,t70,t71,t72,t73,t74,t75,t76,t77,t78,t79,t80,t81,t82,t83,t84,t85,t86,t87,t88,t89,t90,t91,t92,t93,t94,t95,t96,t97,t98,t99,t100,t101,t102,t103,t104,t105,t106,t107,t108,t109,t110,t111,t112,t113,t114,t115,t116,t117,t118,t119,t120,t121,t122,t123,t124,t125,t126,t127,t128,t129,t130,t131,t132,t133,t134,t135,t136,t137,t138,t139,t140,t141,t142,t143,t144,t145,t146,t147,t148,t149,t150,t151,t152,t153,t154,t155,t156,t157,t158,t159,t160,t161,t162,t163,t164,t165,t166,t167,t168,t169,t170,t171,t172,t173,t174,t175,t176,t177,t178,t179,t180,t181,t182,t183,t184,t185,t186,t187,t188,t189,t190,t191,t192,t193,t194,t195,t196,t197,t198,t199,t200,t201,t202,t203,t204,t205,t206,t207,t208,t209,t210,t211,t212,t213,t214,t215,t216,t217,t218,t219,t220,t221,t222,t223,t224,t225,t226,t227,t228,t229,t230,t231,t232,t233,t234,t235,t236,t237,t238,t239,t240,t241,t242,t243,t244,t245,t246,t247,t248,t249,t250,t251,t252,t253,t254,t255,t256,t00;

View File

@ -5,7 +5,24 @@ type int(11) DEFAULT '0' NOT NULL,
event_id int(11) DEFAULT '0' NOT NULL,
PRIMARY KEY (event_date,type,event_id)
);
INSERT INTO t1 VALUES ('1999-07-10',100100,24),('1999-07-11',100100,25),('1999-07-13',100600,0),('1999-07-13',100600,4),('1999-07-13',100600,26),('1999-07-14',100600,10),('1999-07-15',100600,16),('1999-07-15',100800,45),('1999-07-15',101000,47),('1999-07-16',100800,46),('1999-07-20',100600,5),('1999-07-20',100600,27),('1999-07-21',100600,11),('1999-07-22',100600,17),('1999-07-23',100100,39),('1999-07-24',100100,39),('1999-07-24',100500,40),('1999-07-25',100100,39),('1999-07-27',100600,1),('1999-07-27',100600,6),('1999-07-27',100600,28),('1999-07-28',100600,12),('1999-07-29',100500,41),('1999-07-29',100600,18),('1999-07-30',100500,41),('1999-07-31',100500,41),('1999-08-01',100700,34),('1999-08-03',100600,7),('1999-08-03',100600,29),('1999-08-04',100600,13),('1999-08-05',100500,42),('1999-08-05',100600,19),('1999-08-06',100500,42),('1999-08-07',100500,42),('1999-08-08',100500,42),('1999-08-10',100600,2),('1999-08-10',100600,9),('1999-08-10',100600,30),('1999-08-11',100600,14),('1999-08-12',100600,20),('1999-08-17',100500,8),('1999-08-17',100600,31),('1999-08-18',100600,15),('1999-08-19',100600,22),('1999-08-24',100600,3),('1999-08-24',100600,32),('1999-08-27',100500,43),('1999-08-31',100600,33),('1999-09-17',100100,37),('1999-09-18',100100,37),('1999-09-19',100100,37),('2000-12-18',100700,38);
INSERT INTO t1 VALUES ('1999-07-10',100100,24), ('1999-07-11',100100,25),
('1999-07-13',100600,0), ('1999-07-13',100600,4), ('1999-07-13',100600,26),
('1999-07-14',100600,10), ('1999-07-15',100600,16), ('1999-07-15',100800,45),
('1999-07-15',101000,47), ('1999-07-16',100800,46), ('1999-07-20',100600,5),
('1999-07-20',100600,27), ('1999-07-21',100600,11), ('1999-07-22',100600,17),
('1999-07-23',100100,39), ('1999-07-24',100100,39), ('1999-07-24',100500,40),
('1999-07-25',100100,39), ('1999-07-27',100600,1), ('1999-07-27',100600,6),
('1999-07-27',100600,28), ('1999-07-28',100600,12), ('1999-07-29',100500,41),
('1999-07-29',100600,18), ('1999-07-30',100500,41), ('1999-07-31',100500,41),
('1999-08-01',100700,34), ('1999-08-03',100600,7), ('1999-08-03',100600,29),
('1999-08-04',100600,13), ('1999-08-05',100500,42), ('1999-08-05',100600,19),
('1999-08-06',100500,42), ('1999-08-07',100500,42), ('1999-08-08',100500,42),
('1999-08-10',100600,2), ('1999-08-10',100600,9), ('1999-08-10',100600,30),
('1999-08-11',100600,14), ('1999-08-12',100600,20), ('1999-08-17',100500,8),
('1999-08-17',100600,31), ('1999-08-18',100600,15), ('1999-08-19',100600,22),
('1999-08-24',100600,3), ('1999-08-24',100600,32), ('1999-08-27',100500,43),
('1999-08-31',100600,33), ('1999-09-17',100100,37), ('1999-09-18',100100,37),
('1999-09-19',100100,37), ('2000-12-18',100700,38);
select event_date,type,event_id from t1 WHERE event_date >= "1999-07-01" AND event_date < "1999-07-15" AND (type=100600 OR type=100100) ORDER BY event_date;
event_date type event_id
1999-07-10 100100 24
@ -35,35 +52,21 @@ CLOSED tinyint(4) DEFAULT '0' NOT NULL,
ISS_DATE date DEFAULT '0000-00-00' NOT NULL,
PRIMARY KEY (PAPER_ID,YEAR,ISSUE)
);
INSERT INTO t1 VALUES (3,1999,34,0,'1999-07-12');
INSERT INTO t1 VALUES (1,1999,111,0,'1999-03-23');
INSERT INTO t1 VALUES (1,1999,222,0,'1999-03-23');
INSERT INTO t1 VALUES (3,1999,33,0,'1999-07-12');
INSERT INTO t1 VALUES (3,1999,32,0,'1999-07-12');
INSERT INTO t1 VALUES (3,1999,31,0,'1999-07-12');
INSERT INTO t1 VALUES (3,1999,30,0,'1999-07-12');
INSERT INTO t1 VALUES (3,1999,29,0,'1999-07-12');
INSERT INTO t1 VALUES (3,1999,28,0,'1999-07-12');
INSERT INTO t1 VALUES (1,1999,40,1,'1999-05-01');
INSERT INTO t1 VALUES (1,1999,41,1,'1999-05-01');
INSERT INTO t1 VALUES (1,1999,42,1,'1999-05-01');
INSERT INTO t1 VALUES (1,1999,46,1,'1999-05-01');
INSERT INTO t1 VALUES (1,1999,47,1,'1999-05-01');
INSERT INTO t1 VALUES (1,1999,48,1,'1999-05-01');
INSERT INTO t1 VALUES (1,1999,49,1,'1999-05-01');
INSERT INTO t1 VALUES (1,1999,50,0,'1999-05-01');
INSERT INTO t1 VALUES (1,1999,51,0,'1999-05-01');
INSERT INTO t1 VALUES (1,1999,200,0,'1999-06-28');
INSERT INTO t1 VALUES (1,1999,52,0,'1999-06-28');
INSERT INTO t1 VALUES (1,1999,53,0,'1999-06-28');
INSERT INTO t1 VALUES (1,1999,54,0,'1999-06-28');
INSERT INTO t1 VALUES (1,1999,55,0,'1999-06-28');
INSERT INTO t1 VALUES (1,1999,56,0,'1999-07-01');
INSERT INTO t1 VALUES (1,1999,57,0,'1999-07-01');
INSERT INTO t1 VALUES (1,1999,58,0,'1999-07-01');
INSERT INTO t1 VALUES (1,1999,59,0,'1999-07-01');
INSERT INTO t1 VALUES (1,1999,60,0,'1999-07-01');
INSERT INTO t1 VALUES (3,1999,35,0,'1999-07-12');
INSERT INTO t1 VALUES (3,1999,34,0,'1999-07-12'), (1,1999,111,0,'1999-03-23'),
(1,1999,222,0,'1999-03-23'), (3,1999,33,0,'1999-07-12'),
(3,1999,32,0,'1999-07-12'), (3,1999,31,0,'1999-07-12'),
(3,1999,30,0,'1999-07-12'), (3,1999,29,0,'1999-07-12'),
(3,1999,28,0,'1999-07-12'), (1,1999,40,1,'1999-05-01'),
(1,1999,41,1,'1999-05-01'), (1,1999,42,1,'1999-05-01'),
(1,1999,46,1,'1999-05-01'), (1,1999,47,1,'1999-05-01'),
(1,1999,48,1,'1999-05-01'), (1,1999,49,1,'1999-05-01'),
(1,1999,50,0,'1999-05-01'), (1,1999,51,0,'1999-05-01'),
(1,1999,200,0,'1999-06-28'), (1,1999,52,0,'1999-06-28'),
(1,1999,53,0,'1999-06-28'), (1,1999,54,0,'1999-06-28'),
(1,1999,55,0,'1999-06-28'), (1,1999,56,0,'1999-07-01'),
(1,1999,57,0,'1999-07-01'), (1,1999,58,0,'1999-07-01'),
(1,1999,59,0,'1999-07-01'), (1,1999,60,0,'1999-07-01'),
(3,1999,35,0,'1999-07-12');
select YEAR,ISSUE from t1 where PAPER_ID=3 and (YEAR>1999 or (YEAR=1999 and ISSUE>28)) order by YEAR,ISSUE;
YEAR ISSUE
1999 29
@ -88,7 +91,12 @@ PRIMARY KEY (id),
KEY parent_id (parent_id),
KEY level (level)
);
INSERT INTO t1 VALUES (1,0,0),(3,1,1),(4,1,1),(8,2,2),(9,2,2),(17,3,2),(22,4,2),(24,4,2),(28,5,2),(29,5,2),(30,5,2),(31,6,2),(32,6,2),(33,6,2),(203,7,2),(202,7,2),(20,3,2),(157,0,0),(193,5,2),(40,7,2),(2,1,1),(15,2,2),(6,1,1),(34,6,2),(35,6,2),(16,3,2),(7,1,1),(36,7,2),(18,3,2),(26,5,2),(27,5,2),(183,4,2),(38,7,2),(25,5,2),(37,7,2),(21,4,2),(19,3,2),(5,1,1),(179,5,2);
INSERT INTO t1 VALUES (1,0,0), (3,1,1), (4,1,1), (8,2,2), (9,2,2), (17,3,2),
(22,4,2), (24,4,2), (28,5,2), (29,5,2), (30,5,2), (31,6,2), (32,6,2), (33,6,2),
(203,7,2), (202,7,2), (20,3,2), (157,0,0), (193,5,2), (40,7,2), (2,1,1),
(15,2,2), (6,1,1), (34,6,2), (35,6,2), (16,3,2), (7,1,1), (36,7,2), (18,3,2),
(26,5,2), (27,5,2), (183,4,2), (38,7,2), (25,5,2), (37,7,2), (21,4,2),
(19,3,2), (5,1,1), (179,5,2);
SELECT * FROM t1 WHERE level = 1 AND parent_id = 1;
id parent_id level
3 1 1
@ -207,3 +215,14 @@ select count(*) from t1 where art = 'J';
count(*)
213
drop table t1;
create table t1 ( id1 int not null, id2 int not null, idnull int null, c char(20), primary key (id1,id2));
insert into t1 values (0,1,NULL,"aaa"), (1,1,NULL,"aaa"), (2,1,NULL,"aaa"),
(3,1,NULL,"aaa"), (4,1,NULL,"aaa"), (5,1,NULL,"aaa"),
(6,1,NULL,"aaa"), (7,1,NULL,"aaa"), (8,1,NULL,"aaa"),
(9,1,NULL,"aaa"), (10,1,NULL,"aaa"), (11,1,NULL,"aaa"),
(12,1,NULL,"aaa"), (13,1,NULL,"aaa"), (14,1,NULL,"aaa"),
(15,1,NULL,"aaa"), (16,1,NULL,"aaa"), (17,1,NULL,"aaa"),
(18,1,NULL,"aaa"), (19,1,NULL,"aaa"), (20,1,NULL,"aaa");
select a.id1, b.idnull from t1 as a, t1 as b where a.id2=1 and a.id1=1 and b.id1=a.idnull order by b.id2 desc limit 1;
id1 idnull
drop table t1;

View File

@ -4,20 +4,20 @@ File Position Binlog_do_db Binlog_ignore_db
master-bin.000001 79
reset slave;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
change master to master_host='127.0.0.1';
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 test MASTER_PORT 7 4 slave-relay-bin.000001 4 No No 0 0 0 4
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 test MASTER_PORT 7 4 slave-relay-bin.000001 4 No No 0 0 0 4
change master to master_host='127.0.0.1',master_user='root',
master_password='',master_port=MASTER_PORT;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 7 4 slave-relay-bin.000001 4 No No 0 0 0 4
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 7 4 slave-relay-bin.000001 4 No No 0 0 0 4
start slave;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 7 master-bin.000001 79 slave-relay-bin.000001 123 master-bin.000001 Yes Yes 0 0 79 123
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 7 master-bin.000001 79 slave-relay-bin.000001 123 master-bin.000001 Yes Yes 0 0 79 123
drop table if exists t1;
create table t1 (n int);
insert into t1 values (10),(45),(90);

View File

@ -1,3 +1,4 @@
reset master;
reset slave;
start slave;
show binary logs;

View File

@ -0,0 +1,26 @@
stop slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
delete from mysql.user where user='rpl_do_grant';
delete from mysql.db where user='rpl_do_grant';
flush privileges;
delete from mysql.user where user='rpl_ignore_grant';
delete from mysql.db where user='rpl_ignore_grant';
flush privileges;
grant select on *.* to rpl_do_grant@localhost;
grant drop on test.* to rpl_do_grant@localhost;
show grants for rpl_do_grant@localhost;
Grants for rpl_do_grant@localhost
GRANT SELECT ON *.* TO 'rpl_do_grant'@'localhost'
GRANT DROP ON `test`.* TO 'rpl_do_grant'@'localhost'
set password for rpl_do_grant@localhost=password("does it work?");
select password<>'' from mysql.user where user='rpl_do_grant';
password<>''
1
delete from mysql.user where user='rpl_do_grant';
delete from mysql.db where user='rpl_do_grant';
flush privileges;
flush privileges;

View File

@ -5,7 +5,7 @@ reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
load table t1 from master;
ERROR 08S01: Error connecting to master: Master is not configured
load table t1 from master;

View File

@ -0,0 +1,15 @@
stop slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
create table t1 (a int primary key);
insert into t1 values (1),(1);
ERROR 23000: Duplicate entry '1' for key 1
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 213 slave-relay-bin.000002 257 master-bin.000001 Yes Yes test.t1 0 0 213 257
show tables like 't1';
Tables_in_test (t1)
drop table t1;

View File

@ -13,5 +13,5 @@ master_password='',master_port=SLAVE_PORT;
start slave;
flush logs;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root SLAVE_PORT 60 slave-bin.000001 79 relay-log.000001 122 slave-bin.000001 Yes Yes 0 0 79 122
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root SLAVE_PORT 60 slave-bin.000001 79 relay-log.000002 4 slave-bin.000001 Yes Yes 0 0 79 4

View File

@ -0,0 +1,37 @@
stop slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
delete from mysql.user where user='rpl_ignore_grant';
delete from mysql.db where user='rpl_ignore_grant';
flush privileges;
delete from mysql.user where user='rpl_ignore_grant';
delete from mysql.db where user='rpl_ignore_grant';
flush privileges;
grant select on *.* to rpl_ignore_grant@localhost;
grant drop on test.* to rpl_ignore_grant@localhost;
show grants for rpl_ignore_grant@localhost;
Grants for rpl_ignore_grant@localhost
GRANT SELECT ON *.* TO 'rpl_ignore_grant'@'localhost'
GRANT DROP ON `test`.* TO 'rpl_ignore_grant'@'localhost'
show grants for rpl_ignore_grant@localhost;
ERROR 42000: There is no such grant defined for user 'rpl_ignore_grant' on host 'localhost'
select count(*) from mysql.user where user='rpl_ignore_grant';
count(*)
0
select count(*) from mysql.db where user='rpl_ignore_grant';
count(*)
0
grant select on *.* to rpl_ignore_grant@localhost;
set password for rpl_ignore_grant@localhost=password("does it work?");
select password<>'' from mysql.user where user='rpl_ignore_grant';
password<>''
0
delete from mysql.user where user='rpl_ignore_grant';
delete from mysql.db where user='rpl_ignore_grant';
flush privileges;
delete from mysql.user where user='rpl_ignore_grant';
delete from mysql.db where user='rpl_ignore_grant';
flush privileges;

View File

@ -20,8 +20,8 @@ b c
1 4
drop table t1;
drop table t2;
create table t1(a int auto_increment, key(a));
create table t2(b int auto_increment, c int, key(b));
create table t1(a int auto_increment, key(a)) type=innodb;
create table t2(b int auto_increment, c int, key(b), foreign key(b) references t1(a)) type=innodb;
SET FOREIGN_KEY_CHECKS=0;
insert into t1 values (10);
insert into t1 values (null),(null),(null);

View File

@ -25,6 +25,29 @@ drop table t3;
create table t1(a int, b int, unique(b));
insert into t1 values(1,10);
load data infile '../../std_data/rpl_loaddata.dat' into table t1;
show status like 'slave_running';
Variable_name Value
Slave_running OFF
set global sql_slave_skip_counter=1;
start slave;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 1311 slave-relay-bin.000002 1355 master-bin.000001 Yes Yes 0 0 1311 1355
set sql_log_bin=0;
delete from t1;
set sql_log_bin=1;
load data infile '../../std_data/rpl_loaddata.dat' into table t1;
stop slave;
change master to master_user='test';
change master to master_user='root';
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 1442 slave-relay-bin.000001 4 master-bin.000001 No No 0 0 1442 4
set global sql_slave_skip_counter=1;
start slave;
set sql_log_bin=0;
delete from t1;
set sql_log_bin=1;
load data infile '../../std_data/rpl_loaddata.dat' into table t1;
stop slave;
reset slave;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 4 slave-relay-bin.000001 4 No No 0 0 0 4

View File

@ -92,7 +92,7 @@ slave-bin.000002 4 Query 1 110 use `test`; create table t1 (n int)
slave-bin.000002 62 Query 1 168 use `test`; insert into t1 values (1)
slave-bin.000002 122 Query 1 228 use `test`; drop table t1
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000002 276 slave-relay-bin.000002 1531 master-bin.000002 Yes Yes 0 0 276 1535
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000002 276 slave-relay-bin.000003 214 master-bin.000002 Yes Yes 0 0 276 214
show binlog events in 'slave-bin.000005' from 4;
ERROR HY000: Error when executing command SHOW BINLOG EVENTS: Could not find target log

View File

@ -8,26 +8,26 @@ show master status;
File Position Binlog_do_db Binlog_ignore_db
master-bin.000001 79
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 79 slave-relay-bin.000002 123 master-bin.000001 Yes Yes 0 0 79 127
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 79 slave-relay-bin.000002 123 master-bin.000001 Yes Yes 0 0 79 123
stop slave;
change master to master_log_pos=73;
start slave;
stop slave;
change master to master_log_pos=73;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 73 slave-relay-bin.000001 4 master-bin.000001 No No 0 0 73 4
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 73 slave-relay-bin.000001 4 master-bin.000001 No No 0 0 73 4
start slave;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 73 slave-relay-bin.000001 4 master-bin.000001 No Yes 0 0 73 4
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 73 slave-relay-bin.000001 48 master-bin.000001 No Yes 0 0 73 48
stop slave;
change master to master_log_pos=173;
start slave;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 173 slave-relay-bin.000001 4 master-bin.000001 No Yes 0 0 173 4
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 173 slave-relay-bin.000001 4 master-bin.000001 No Yes 0 0 173 4
show master status;
File Position Binlog_do_db Binlog_ignore_db
master-bin.000001 79

View File

@ -4,6 +4,10 @@ reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
select master_pos_wait('master-bin.999999',0,10);
master_pos_wait('master-bin.999999',0,10)
select master_pos_wait('master-bin.999999',0,2);
master_pos_wait('master-bin.999999',0,2)
-1
select master_pos_wait('master-bin.999999',0);
stop slave sql_thread;
master_pos_wait('master-bin.999999',0)
NULL

View File

@ -0,0 +1,61 @@
stop slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
stop slave;
create table t1 (a int);
drop table t1;
reset slave;
set global max_binlog_size=8192;
set global max_relay_log_size=8192-1;
select @@global.max_relay_log_size;
@@global.max_relay_log_size
4096
start slave;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 50477 slave-relay-bin.000014 1221 master-bin.000001 Yes Yes 0 0 50477 1221
stop slave;
reset slave;
set global max_relay_log_size=(5*4096);
select @@global.max_relay_log_size;
@@global.max_relay_log_size
20480
start slave;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 50477 slave-relay-bin.000004 9457 master-bin.000001 Yes Yes 0 0 50477 9457
stop slave;
reset slave;
set global max_relay_log_size=0;
select @@global.max_relay_log_size;
@@global.max_relay_log_size
0
start slave;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 50477 slave-relay-bin.000008 1283 master-bin.000001 Yes Yes 0 0 50477 1283
stop slave;
reset slave;
flush logs;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 4 slave-relay-bin.000001 4 No No 0 0 0 4
reset slave;
start slave;
flush logs;
create table t1 (a int);
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 50535 slave-relay-bin.000009 62 master-bin.000001 Yes Yes 0 0 50535 62
flush logs;
drop table t1;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 50583 slave-relay-bin.000010 52 master-bin.000001 Yes Yes 0 0 50583 52
flush logs;
show master status;
File Position Binlog_do_db Binlog_ignore_db
master-bin.000002 4

View File

@ -5,7 +5,7 @@ reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
SHOW SLAVE STATUS;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
SHOW SLAVE HOSTS;
Server_id Host Port Rpl_recovery_rank Master_id
2 127.0.0.1 SLAVE_PORT 2 1

View File

@ -6,8 +6,14 @@ drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
stop slave;
create table t1 (a int);
drop table t1;
create table t1 (a int);
drop table t1;
reset slave;
start slave io_thread;
stop slave io_thread;
reset slave;
start slave;
select master_pos_wait('master-bin.001',5000,45)=-1;
master_pos_wait('master-bin.001',5000,45)=-1
select master_pos_wait('master-bin.001',200,6)=-1;
master_pos_wait('master-bin.001',200,6)=-1
0

View File

@ -26,3 +26,6 @@ n
select * from t11;
ERROR 42S02: Table 'test.t11' doesn't exist
drop table if exists t1,t2,t11;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 1281 slave-relay-bin.000002 1325 master-bin.000001 Yes Yes test.t1 0 0 1281 1325

View File

@ -0,0 +1,22 @@
stop slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 79 slave-relay-bin.000002 123 master-bin.000001 Yes Yes 0 0 79 123
stop slave;
change master to master_user='test';
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 test MASTER_PORT 1 master-bin.000001 79 slave-relay-bin.000001 4 master-bin.000001 No No 0 0 79 4
reset slave;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 4 slave-relay-bin.000001 4 No No 0 0 0 4
start slave;
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 1 master-bin.000001 79 slave-relay-bin.000002 123 master-bin.000001 Yes Yes 0 0 79 123

View File

@ -5,7 +5,7 @@ ERROR HY000: Could not initialize master info structure, check permisions on mas
start slave;
ERROR HY000: Could not initialize master info structure, check permisions on master.info
change master to master_host='127.0.0.1',master_port=MASTER_PORT, master_user='root';
Could not initialize master info
ERROR HY000: Could not initialize master info structure, check permisions on master.info
reset slave;
change master to master_host='127.0.0.1',master_port=MASTER_PORT, master_user='root';
reset master;
@ -15,8 +15,8 @@ insert into temp_table values ("testing temporary tables");
create table t1 (s text);
insert into t1 values('Could not break slave'),('Tried hard');
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 60 master-bin.000001 417 slave-relay-bin.000001 461 master-bin.000001 Yes Yes 0 0 417 461
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 60 master-bin.000001 417 slave-relay-bin.000001 461 master-bin.000001 Yes Yes 0 0 417 461
select * from t1;
s
Could not break slave
@ -56,8 +56,8 @@ Log_name
master-bin.000003
insert into t2 values (65);
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 60 master-bin.000003 290 slave-relay-bin.000001 1088 master-bin.000003 Yes Yes 0 0 290 1088
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 60 master-bin.000003 290 slave-relay-bin.000001 1088 master-bin.000003 Yes Yes 0 0 290 1088
select * from t2;
m
34
@ -73,17 +73,15 @@ show binary logs;
Log_name
master-bin.000003
master-bin.000004
master-bin.000005
master-bin.000006
show master status;
File Position Binlog_do_db Binlog_ignore_db
master-bin.000006 838
master-bin.000004 2886
select * from t4;
a
testing temporary tables part 2
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 60 master-bin.000006 838 slave-relay-bin.000001 8067 master-bin.000006 Yes Yes 0 0 838 8067
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Replicate_do_table Replicate_ignore_table Replicate_wild_do_table Replicate_wild_ignore_table Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root MASTER_PORT 60 master-bin.000004 2886 slave-relay-bin.000001 7891 master-bin.000004 Yes Yes 0 0 2886 7891
lock tables t3 read;
select count(*) from t3 where n >= 4;
count(*)

View File

@ -65,11 +65,11 @@ slave-bin.000001 851 User var 2 851 @n1=NULL
slave-bin.000001 877 Query 1 877 use `test`; insert into t1 values (@n1)
slave-bin.000001 939 Query 1 939 use `test`; insert into t1 values (@n2)
slave-bin.000001 1001 Query 1 1001 use `test`; insert into t1 values (@a:=0), (@a:=@a+1), (@a:=@a+1)
slave-bin.000001 1089 User var 2 1089 @a='2'
slave-bin.000001 1124 Query 1 1124 use `test`; insert into t1 values (@a+(@b:=@a+1))
slave-bin.000001 1196 User var 2 1196 @q='abc'
slave-bin.000001 1233 Query 1 1233 use `test`; insert t1 values (@q), (@q:=concat(@q, 'n1')), (@q:=concat(@q, 'n2'))
slave-bin.000001 1337 User var 2 1337 @a=5
slave-bin.000001 1379 Query 1 1379 use `test`; insert into t1 values (@a),(@a)
slave-bin.000001 1089 User var 2 1089 @a=2
slave-bin.000001 1131 Query 1 1131 use `test`; insert into t1 values (@a+(@b:=@a+1))
slave-bin.000001 1203 User var 2 1203 @q='abc'
slave-bin.000001 1240 Query 1 1240 use `test`; insert t1 values (@q), (@q:=concat(@q, 'n1')), (@q:=concat(@q, 'n2'))
slave-bin.000001 1344 User var 2 1344 @a=5
slave-bin.000001 1386 Query 1 1386 use `test`; insert into t1 values (@a),(@a)
drop table t1;
stop slave;

View File

@ -26,3 +26,13 @@ ORDER BY link;
key_link_id link
NULL NULL
drop table t1,t2;
CREATE TABLE t1 (
html varchar(5) default NULL,
rin int(11) default '0',
out int(11) default '0'
) TYPE=MyISAM;
INSERT INTO t1 VALUES ('1',1,0);
SELECT DISTINCT html,SUM(out)/(SUM(rin)+1) as 'prod' FROM t1 GROUP BY rin;
html prod
1 0.00
drop table t1;

View File

@ -2568,16 +2568,46 @@ fld1 fld1
250503 250505
250504 250505
250505 250505
insert into t2 (fld1, companynr) values (999999,99);
select t2.companynr,companyname from t2 left join t4 using (companynr) where t4.companynr is null;
companynr companyname
99 NULL
select count(*) from t2 left join t4 using (companynr) where t4.companynr is not null;
count(*)
1199
explain select t2.companynr,companyname from t2 left join t4 using (companynr) where t4.companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
1 SIMPLE t2 ALL NULL NULL NULL NULL 1200
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1 Using where; Not exists
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where; Not exists
1 SIMPLE t2 ALL NULL NULL NULL NULL 1200 Using where; Not exists
delete from t2 where fld1=999999;
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 or t2.companynr < 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 and t4.companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1 Using where
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 or t2.companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 or t2.companynr < 0 or t4.companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where ifnull(t2.companynr,1)>0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
select distinct t2.companynr,t4.companynr from t2,t4 where t2.companynr=t4.companynr+1;
companynr companynr
37 36
@ -3487,3 +3517,23 @@ aa id t2_id id
5 8303 2520 2520
6 8304 2521 2521
drop table t1,t2;
create table t1 (id1 int NOT NULL);
create table t2 (id2 int NOT NULL);
create table t3 (id3 int NOT NULL);
create table t4 (id4 int NOT NULL, id44 int NOT NULL, KEY (id4));
insert into t1 values (1);
insert into t1 values (2);
insert into t2 values (1);
insert into t4 values (1,1);
explain select * from t1 left join t2 on id1 = id2 left join t3 on id1 = id3
left join t4 on id3 = id4 where id2 = 1 or id4 = 1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 system NULL NULL NULL NULL 0 const row not found
1 SIMPLE t1 ALL NULL NULL NULL NULL 2
1 SIMPLE t2 ALL NULL NULL NULL NULL 1
1 SIMPLE t4 ALL id4 NULL NULL NULL 1 Using where
select * from t1 left join t2 on id1 = id2 left join t3 on id1 = id3
left join t4 on id3 = id4 where id2 = 1 or id4 = 1;
id1 id2 id3 id4 id44
1 1 NULL NULL NULL
drop table t1,t2,t3,t4;

View File

@ -13,7 +13,7 @@ a b
1 test
2 test2
update t1 set b="a" where a=1;
select 1 from t1,t1 as t2,t1 as t3,t1 as t4;
select 1 from t1,t1 as t2,t1 as t3;
1
1
1
@ -35,18 +35,19 @@ update t1 set b="a" limit 1;
update t1 set b="a" where b="b" limit 2;
delete from t1 where b="test" limit 1;
delete from t1 where a+0=1 limit 2;
alter table t1 add key b (b);
SET MAX_JOIN_SIZE=2;
SELECT @@MAX_JOIN_SIZE, @@SQL_BIG_SELECTS;
@@MAX_JOIN_SIZE @@SQL_BIG_SELECTS
2 0
insert into t1 values (null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a");
SELECT * from t1;
SELECT * from t1 order by a;
ERROR 42000: The SELECT would examine more rows than MAX_JOIN_SIZE. Check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is ok
SET SQL_BIG_SELECTS=1;
SELECT * from t1;
SELECT * from t1 order by a;
a b
3 a
2 test2
3 a
4 a
5 a
SET MAX_JOIN_SIZE=2;
@ -55,9 +56,26 @@ ERROR 42000: The SELECT would examine more rows than MAX_JOIN_SIZE. Check your W
SET MAX_JOIN_SIZE=DEFAULT;
SELECT * from t1;
a b
3 a
2 test2
3 a
4 a
5 a
SELECT @@MAX_SEEKS_FOR_KEY;
@@MAX_SEEKS_FOR_KEY
4294967295
analyze table t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
insert into t1 values (null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a");
explain select * from t1,t1 as t2 where t1.b=t2.b;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL b NULL NULL NULL 21
1 SIMPLE t2 ALL b NULL NULL NULL 16 Using where
set MAX_SEEKS_FOR_KEY=1;
explain select * from t1,t1 as t2 where t1.b=t2.b;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL b NULL NULL NULL 21
1 SIMPLE t2 ref b b 21 test.t1.b 6 Using where
SET MAX_SEEKS_FOR_KEY=DEFAULT;
drop table t1;
SET SQL_SAFE_UPDATES=0,SQL_SELECT_LIMIT=DEFAULT, SQL_MAX_JOIN_SIZE=DEFAULT;

View File

@ -6,7 +6,7 @@ explain select (select 2);
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1247 Select 2 was reduced during optimisation
Note 1248 Select 2 was reduced during optimisation
SELECT (SELECT 1) UNION SELECT (SELECT 2);
(SELECT 1)
1
@ -16,8 +16,8 @@ id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY NULL NULL NULL NULL NULL NULL NULL No tables used
3 UNION NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1247 Select 2 was reduced during optimisation
Note 1247 Select 4 was reduced during optimisation
Note 1248 Select 2 was reduced during optimisation
Note 1248 Select 4 was reduced during optimisation
SELECT (SELECT (SELECT 0 UNION SELECT 0));
(SELECT (SELECT 0 UNION SELECT 0))
0
@ -27,7 +27,7 @@ id select_type table type possible_keys key key_len ref rows Extra
3 SUBQUERY NULL NULL NULL NULL NULL NULL NULL No tables used
4 UNION NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1247 Select 2 was reduced during optimisation
Note 1248 Select 2 was reduced during optimisation
SELECT (SELECT 1 FROM (SELECT 1) as b HAVING a=1) as a;
ERROR 42S22: Reference 'a' not supported (forward reference in item list)
SELECT (SELECT 1 FROM (SELECT 1) as b HAVING b=1) as a,(SELECT 1 FROM (SELECT 1) as c HAVING a=1) as b;
@ -618,7 +618,6 @@ x
3
3
INSERT INTO t1 (x) select (SELECT SUM(x)+2 FROM t1) FROM t2;
ERROR HY000: You can't specify target table 't1' for update in FROM clause
INSERT DELAYED INTO t1 (x) VALUES ((SELECT SUM(x) FROM t2));
ERROR 42S22: Unknown column 'x' in 'field list'
INSERT DELAYED INTO t1 (x) VALUES ((SELECT SUM(a) FROM t2));
@ -628,6 +627,8 @@ x
2
3
3
11
11
2
drop table t1, t2, t3;
CREATE TABLE t1 (x int not null, y int, primary key (x));
@ -677,7 +678,7 @@ EXPLAIN SELECT * FROM t2 WHERE id IN (SELECT 1);
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 ref id id 5 const 1 Using where; Using index
Warnings:
Note 1247 Select 2 was reduced during optimisation
Note 1248 Select 2 was reduced during optimisation
SELECT * FROM t2 WHERE id IN (SELECT 1 UNION SELECT 3);
id
1
@ -688,8 +689,8 @@ EXPLAIN SELECT * FROM t2 WHERE id IN (SELECT 1+(select 1));
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 ref id id 5 const 1 Using where; Using index
Warnings:
Note 1247 Select 3 was reduced during optimisation
Note 1247 Select 2 was reduced during optimisation
Note 1248 Select 3 was reduced during optimisation
Note 1248 Select 2 was reduced during optimisation
EXPLAIN SELECT * FROM t2 WHERE id IN (SELECT 1 UNION SELECT 3);
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 index NULL id 5 NULL 2 Using where; Using index
@ -818,8 +819,8 @@ explain select (select a+1) from t1;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1 ALL NULL NULL NULL NULL 3
Warnings:
Note 1271 Field or reference 'a' of SELECT #2 was resolved in SELECT #1
Note 1247 Select 2 was reduced during optimisation
Note 1273 Field or reference 'a' of SELECT #2 was resolved in SELECT #1
Note 1248 Select 2 was reduced during optimisation
select (select a+1) from t1;
(select a+1)
2.5
@ -839,7 +840,7 @@ a t1.a in (select t2.a from t2)
explain SELECT t1.a, t1.a in (select t2.a from t2) FROM t1;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1 index NULL PRIMARY 4 NULL 4 Using index
2 DEPENDENT SUBQUERY t2 index_in a a 5 const 2 Using where; Using index
2 DEPENDENT SUBQUERY t2 index_in a a 5 func 2 Using where; Using index
CREATE TABLE t3 (a int(11) default '0');
INSERT INTO t3 VALUES (1),(2),(3);
SELECT t1.a, t1.a in (select t2.a from t2,t3 where t3.a=t2.a) FROM t1;
@ -851,7 +852,7 @@ a t1.a in (select t2.a from t2,t3 where t3.a=t2.a)
explain SELECT t1.a, t1.a in (select t2.a from t2,t3 where t3.a=t2.a) FROM t1;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1 index NULL PRIMARY 4 NULL 4 Using index
2 DEPENDENT SUBQUERY t2 ref_or_null a a 5 const 2 Using where; Using index
2 DEPENDENT SUBQUERY t2 ref_or_null a a 5 func 2 Using where; Using index
2 DEPENDENT SUBQUERY t3 ALL NULL NULL NULL NULL 3 Using where
drop table t1,t2,t3;
create table t1 (a float);
@ -996,12 +997,12 @@ UNIQUE KEY `maxnumrep` (`maxnumrep`)
) TYPE=MyISAM CHARSET=latin1;
INSERT INTO t1 VALUES ('joce','1','','joce'),('test','2','','test');
Warnings:
Warning 1263 Data truncated for column 'date' at row 1
Warning 1263 Data truncated for column 'date' at row 2
Warning 1264 Data truncated for column 'date' at row 1
Warning 1264 Data truncated for column 'date' at row 2
INSERT INTO t2 VALUES ('joce','1','','joce'),('test','2','','test');
Warnings:
Warning 1263 Data truncated for column 'date' at row 1
Warning 1263 Data truncated for column 'date' at row 2
Warning 1264 Data truncated for column 'date' at row 1
Warning 1264 Data truncated for column 'date' at row 2
INSERT INTO t3 VALUES (1,1);
SELECT DISTINCT topic FROM t2 WHERE NOT EXISTS(SELECT * FROM t3 WHERE
numeropost=topic);
@ -1182,7 +1183,7 @@ insert into t1 values (1,0), (2,0), (3,0);
insert into t2 values (1,1), (2,1), (3,1), (2,2);
update ignore t1 set b=(select b from t2 where t1.a=t2.a);
Warnings:
Error 1240 Subselect returns more than 1 record
Error 1241 Subselect returns more than 1 record
select * from t1;
a b
1 1
@ -1283,7 +1284,7 @@ a
explain select * from t2 where t2.a in (select a from t1);
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 index NULL a 5 NULL 4 Using where; Using index
2 DEPENDENT SUBQUERY t1 index_in a a 5 func 100 Using index
2 DEPENDENT SUBQUERY t1 index_in a a 5 func 1001 Using index
select * from t2 where t2.a in (select a from t1 where t1.b <> 30);
a
2
@ -1291,7 +1292,7 @@ a
explain select * from t2 where t2.a in (select a from t1 where t1.b <> 30);
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 index NULL a 5 NULL 4 Using where; Using index
2 DEPENDENT SUBQUERY t1 index_in a a 5 func 100 Using index; Using where
2 DEPENDENT SUBQUERY t1 index_in a a 5 func 1001 Using index; Using where
select * from t2 where t2.a in (select t1.a from t1,t3 where t1.b=t3.a);
a
2
@ -1300,7 +1301,7 @@ explain select * from t2 where t2.a in (select t1.a from t1,t3 where t1.b=t3.a);
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 index NULL a 5 NULL 4 Using where; Using index
2 DEPENDENT SUBQUERY t3 index a a 5 NULL 3 Using index
2 DEPENDENT SUBQUERY t1 ref a a 10 func,test.t3.a 100 Using where; Using index
2 DEPENDENT SUBQUERY t1 ref a a 10 func,test.t3.a 1000 Using where; Using index
insert into t1 values (3,31);
select * from t2 where t2.a in (select a from t1 where t1.b <> 30);
a
@ -1314,7 +1315,7 @@ a
explain select * from t2 where t2.a in (select a from t1 where t1.b <> 30);
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 index NULL a 5 NULL 4 Using where; Using index
2 DEPENDENT SUBQUERY t1 index_in a a 5 func 100 Using index; Using where
2 DEPENDENT SUBQUERY t1 index_in a a 5 func 1001 Using index; Using where
drop table t1, t2, t3;
create table t1 (a int, b int);
create table t2 (a int, b int);
@ -1328,3 +1329,29 @@ a (select count(distinct t1.b) as sum from t1,t2 where t1.a=t2.a and t2.b > 0 an
2 2
1 2
drop table t1,t2,t3;
create table t1 (s1 int);
create table t2 (s1 int);
insert into t1 values (1);
insert into t2 values (1);
select * from t1 where exists (select s1 from t2 having max(t2.s1)=t1.s1);
s1
drop table t1,t2;
create table t1 (s1 int);
create table t2 (s1 int);
insert into t1 values (1);
insert into t2 values (1);
update t1 set s1 = s1 + 1 where 1 = (select x.s1 as A from t2 WHERE t2.s1 > t1.s1 order by A);
ERROR 42S02: Unknown table 'x' in field list
DROP TABLE t1, t2;
create table t1 (a int) type=innodb;
create table t2 (a int) type=innodb;
create table t3 (a int) type=innodb;
insert into t1 values (1),(2),(3),(4);
insert into t2 values (10),(20),(30),(40);
insert into t3 values (1),(2),(10),(50);
select a from t3 where t3.a in (select a from t1 where a <= 3 union select * from t2 where a <= 30);
a
1
2
10
drop table t1,t2;

View File

@ -1,4 +1,5 @@
drop table if exists t1,t2,t7,t8,t9;
drop database if exists mysqltest;
create table t1 (a int not null auto_increment, b char(16) not null, primary key (a));
create table t2 (a int not null auto_increment, b char(16) not null, primary key (a));
insert into t1 (b) values ("test"),("test1"),("test2"),("test3");
@ -51,11 +52,11 @@ Got one of the listed errors
Got one of the listed errors
Got one of the listed errors
Got one of the listed errors
alter table t9 rename test_mysqltest.t9;
select count(*) from test_mysqltest.t9;
alter table t9 rename mysqltest.t9;
select count(*) from mysqltest.t9;
count(*)
16724
show create table test_mysqltest.t9;
show create table mysqltest.t9;
Table Create Table
t9 CREATE TABLE `t9` (
`a` int(11) NOT NULL auto_increment,
@ -64,4 +65,4 @@ t9 CREATE TABLE `t9` (
`d` int(11) NOT NULL default '0',
PRIMARY KEY (`a`)
) TYPE=MyISAM CHARSET=latin1
drop database test_mysqltest;
drop database mysqltest;

View File

@ -9,9 +9,9 @@ d mediumtext YES NULL
e longtext YES NULL
CREATE TABLE t2 (a char(257), b varchar(70000) binary, c varchar(70000000));
Warnings:
Warning 1244 Converting column 'a' from CHAR to TEXT
Warning 1244 Converting column 'b' from CHAR to BLOB
Warning 1244 Converting column 'c' from CHAR to TEXT
Warning 1245 Converting column 'a' from CHAR to TEXT
Warning 1245 Converting column 'b' from CHAR to BLOB
Warning 1245 Converting column 'c' from CHAR to TEXT
show columns from t2;
Field Type Null Key Default Extra
a text YES NULL

View File

@ -32,6 +32,8 @@ datum
2000-01-02
2000-01-03
2000-01-04
SELECT * FROM t1 WHERE datum BETWEEN "2000-1-2" AND datum - INTERVAL 100 DAY;
datum
DROP TABLE t1;
CREATE TABLE t1 (
user_id char(10),

View File

@ -52,10 +52,17 @@ a
0000-00-00 00:00:00
drop table t1;
create table t1 (id int, dt datetime);
insert into t1 values (1,"2001-08-14 00:00:00"),(2,"2001-08-15 00:00:00"),(3,"2001-08-16 00:00:00");
insert into t1 values (1,"2001-08-14 00:00:00"),(2,"2001-08-15 00:00:00"),(3,"2001-08-16 00:00:00"),(4,"2003-09-15 01:20:30");
select * from t1 where dt='2001-08-14 00:00:00' and dt = if(id=1,'2001-08-14 00:00:00','1999-08-15');
id dt
1 2001-08-14 00:00:00
create index dt on t1 (dt);
select * from t1 where dt > 20021020;
id dt
4 2003-09-15 01:20:30
select * from t1 ignore index (dt) where dt > 20021020;
id dt
4 2003-09-15 01:20:30
drop table t1;
CREATE TABLE `t1` (
`date` datetime NOT NULL default '0000-00-00 00:00:00',

View File

@ -1,4 +1,5 @@
DROP TABLE IF EXISTS t1;
SET SQL_WARNINGS=1;
CREATE TABLE t1 (
id int(11) NOT NULL auto_increment,
datatype_id int(11) DEFAULT '0' NOT NULL,
@ -157,17 +158,17 @@ insert into t1 values ("00000000000001"),("+0000000000001"),("-0000000000001");
insert into t1 values ("+111111111.11"),("111111111.11"),("-11111111.11");
insert into t1 values ("-111111111.11"),("+1111111111.11"),("1111111111.11");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1262 Data truncated, out of range for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 3
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 3
insert into t1 values ("1e+1000"),("1e-1000"),("-1e+1000");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 3
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1264 Data truncated for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 3
insert into t1 values ("123.4e"),("123.4e+2"),("123.4e-2"),("123e1"),("123e+0");
Warnings:
Warning 1263 Data truncated for column 'a' at row 3
Warning 1264 Data truncated for column 'a' at row 3
select * from t1;
a
0.00
@ -200,32 +201,32 @@ drop table t1;
create table t1 (a decimal(10,2) unsigned);
insert into t1 values ("0.0"),("-0.0"),("+0.0"),("01.0"),("+01.0"),("-01.0");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 6
Warning 1263 Data truncated, out of range for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 6
insert into t1 values ("-.1"),("+.1"),(".1");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 1
insert into t1 values ("00000000000001"),("+0000000000001"),("-0000000000001");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 3
Warning 1263 Data truncated, out of range for column 'a' at row 3
insert into t1 values ("+111111111.11"),("111111111.11"),("-11111111.11");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1262 Data truncated, out of range for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 3
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 3
insert into t1 values ("-111111111.11"),("+1111111111.11"),("1111111111.11");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1262 Data truncated, out of range for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 3
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 3
insert into t1 values ("1e+1000"),("1e-1000"),("-1e+1000");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 3
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1264 Data truncated for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 3
insert into t1 values ("123.4e"),("123.4e+2"),("123.4e-2"),("123e1"),("123e+0");
Warnings:
Warning 1263 Data truncated for column 'a' at row 3
Warning 1264 Data truncated for column 'a' at row 3
select * from t1;
a
0.00
@ -258,32 +259,32 @@ drop table t1;
create table t1 (a decimal(10,2) zerofill);
insert into t1 values ("0.0"),("-0.0"),("+0.0"),("01.0"),("+01.0"),("-01.0");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 6
Warning 1263 Data truncated, out of range for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 6
insert into t1 values ("-.1"),("+.1"),(".1");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 1
insert into t1 values ("00000000000001"),("+0000000000001"),("-0000000000001");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 3
Warning 1263 Data truncated, out of range for column 'a' at row 3
insert into t1 values ("+111111111.11"),("111111111.11"),("-11111111.11");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1262 Data truncated, out of range for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 3
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 3
insert into t1 values ("-111111111.11"),("+1111111111.11"),("1111111111.11");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1262 Data truncated, out of range for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 3
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 3
insert into t1 values ("1e+1000"),("1e-1000"),("-1e+1000");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 3
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1264 Data truncated for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 3
insert into t1 values ("123.4e"),("123.4e+2"),("123.4e-2"),("123e1"),("123e+0");
Warnings:
Warning 1263 Data truncated for column 'a' at row 3
Warning 1264 Data truncated for column 'a' at row 3
select * from t1;
a
00000000.00
@ -320,13 +321,13 @@ insert into t1 values (00000000000001),(+0000000000001),(-0000000000001);
insert into t1 values (+111111111.11),(111111111.11),(-11111111.11);
insert into t1 values (-111111111.11),(+1111111111.11),(1111111111.11);
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1262 Data truncated, out of range for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 3
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 3
insert into t1 values (1e+100),(1e-100),(-1e+100);
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1262 Data truncated, out of range for column 'a' at row 3
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 3
insert into t1 values (123.4e0),(123.4e+2),(123.4e-2),(123e1),(123e+0);
select * from t1;
a
@ -360,8 +361,8 @@ drop table t1;
create table t1 (a decimal);
insert into t1 values (-99999999999999),(-1),('+1'),('01'),('+00000000000001'),('+12345678901'),(99999999999999);
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1262 Data truncated, out of range for column 'a' at row 7
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 7
select * from t1;
a
-9999999999
@ -375,9 +376,9 @@ drop table t1;
create table t1 (a decimal unsigned);
insert into t1 values (-99999999999999),(-1),('+1'),('01'),('+00000000000001'),('+1234567890'),(99999999999999);
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1262 Data truncated, out of range for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 7
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 7
select * from t1;
a
0
@ -391,9 +392,9 @@ drop table t1;
create table t1 (a decimal zerofill);
insert into t1 values (-99999999999999),(-1),('+1'),('01'),('+00000000000001'),('+1234567890'),(99999999999999);
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1262 Data truncated, out of range for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 7
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 7
select * from t1;
a
0000000000
@ -407,9 +408,9 @@ drop table t1;
create table t1 (a decimal unsigned zerofill);
insert into t1 values (-99999999999999),(-1),('+1'),('01'),('+00000000000001'),('+1234567890'),(99999999999999);
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1262 Data truncated, out of range for column 'a' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 7
Warning 1263 Data truncated, out of range for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 7
select * from t1;
a
0000000000
@ -423,14 +424,16 @@ drop table t1;
create table t1(a decimal(10,0));
insert into t1 values ("1e4294967295");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1264 Data truncated for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 1
select * from t1;
a
99999999999
delete from t1;
insert into t1 values("1e4294967297");
Warnings:
Warning 1262 Data truncated, out of range for column 'a' at row 1
Warning 1264 Data truncated for column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'a' at row 1
select * from t1;
a
99999999999

View File

@ -15,8 +15,8 @@ f1 float NULL YES NULL select,insert,update,references
f2 double NULL YES NULL select,insert,update,references
insert into t1 values(10,10),(1e+5,1e+5),(1234567890,1234567890),(1e+10,1e+10),(1e+15,1e+15),(1e+20,1e+20),(1e+50,1e+50),(1e+150,1e+150);
Warnings:
Warning 1262 Data truncated, out of range for column 'f1' at row 7
Warning 1262 Data truncated, out of range for column 'f1' at row 8
Warning 1263 Data truncated, out of range for column 'f1' at row 7
Warning 1263 Data truncated, out of range for column 'f1' at row 8
insert into t1 values(-10,-10),(1e-5,1e-5),(1e-10,1e-10),(1e-15,1e-15),(1e-20,1e-20),(1e-50,1e-50),(1e-150,1e-150);
select * from t1;
f1 f2

View File

@ -1,4 +1,5 @@
drop table if exists t1,t2,t3;
SET SQL_WARNINGS=1;
CREATE TABLE t1 (
auto int(5) unsigned NOT NULL auto_increment,
string char(10) default "hello",
@ -88,33 +89,34 @@ insert into t1 values (NULL,2,2,2,2,2,2,2,2,2,2,2,2,2,NULL,NULL,NULL,NULL,NULL,N
insert into t1 values (0,1/3,3,3,3,3,3,3,3,3,3,3,3,3,NULL,'19970303','10:10:10','19970303101010','','','','3',3,3);
insert into t1 values (0,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,NULL,19970807,080706,19970403090807,-1,-1,-1,'-1',-1,-1);
Warnings:
Warning 1262 Data truncated, out of range for column 'utiny' at row 1
Warning 1262 Data truncated, out of range for column 'ushort' at row 1
Warning 1262 Data truncated, out of range for column 'umedium' at row 1
Warning 1262 Data truncated, out of range for column 'ulong' at row 1
Warning 1263 Data truncated for column 'options' at row 1
Warning 1263 Data truncated for column 'flags' at row 1
Warning 1263 Data truncated, out of range for column 'utiny' at row 1
Warning 1263 Data truncated, out of range for column 'ushort' at row 1
Warning 1263 Data truncated, out of range for column 'umedium' at row 1
Warning 1263 Data truncated, out of range for column 'ulong' at row 1
Warning 1264 Data truncated for column 'options' at row 1
Warning 1264 Data truncated for column 'flags' at row 1
insert into t1 values (0,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,NULL,0,0,0,-4294967295,-4294967295,-4294967295,'-4294967295',0,"one,two,tree");
Warnings:
Warning 1262 Data truncated, out of range for column 'tiny' at row 1
Warning 1262 Data truncated, out of range for column 'short' at row 1
Warning 1262 Data truncated, out of range for column 'medium' at row 1
Warning 1262 Data truncated, out of range for column 'long_int' at row 1
Warning 1262 Data truncated, out of range for column 'utiny' at row 1
Warning 1262 Data truncated, out of range for column 'ushort' at row 1
Warning 1262 Data truncated, out of range for column 'umedium' at row 1
Warning 1262 Data truncated, out of range for column 'ulong' at row 1
Warning 1263 Data truncated for column 'options' at row 1
Warning 1264 Data truncated for column 'string' at row 1
Warning 1263 Data truncated, out of range for column 'tiny' at row 1
Warning 1263 Data truncated, out of range for column 'short' at row 1
Warning 1263 Data truncated, out of range for column 'medium' at row 1
Warning 1263 Data truncated, out of range for column 'long_int' at row 1
Warning 1263 Data truncated, out of range for column 'utiny' at row 1
Warning 1263 Data truncated, out of range for column 'ushort' at row 1
Warning 1263 Data truncated, out of range for column 'umedium' at row 1
Warning 1263 Data truncated, out of range for column 'ulong' at row 1
Warning 1264 Data truncated for column 'options' at row 1
insert into t1 values (0,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,NULL,0,0,0,4294967295,4294967295,4294967295,'4294967295',0,0);
Warnings:
Warning 1262 Data truncated, out of range for column 'tiny' at row 1
Warning 1262 Data truncated, out of range for column 'short' at row 1
Warning 1262 Data truncated, out of range for column 'medium' at row 1
Warning 1262 Data truncated, out of range for column 'long_int' at row 1
Warning 1262 Data truncated, out of range for column 'utiny' at row 1
Warning 1262 Data truncated, out of range for column 'ushort' at row 1
Warning 1262 Data truncated, out of range for column 'umedium' at row 1
Warning 1263 Data truncated for column 'options' at row 1
Warning 1263 Data truncated, out of range for column 'tiny' at row 1
Warning 1263 Data truncated, out of range for column 'short' at row 1
Warning 1263 Data truncated, out of range for column 'medium' at row 1
Warning 1263 Data truncated, out of range for column 'long_int' at row 1
Warning 1263 Data truncated, out of range for column 'utiny' at row 1
Warning 1263 Data truncated, out of range for column 'ushort' at row 1
Warning 1263 Data truncated, out of range for column 'umedium' at row 1
Warning 1264 Data truncated for column 'options' at row 1
insert into t1 (tiny) values (1);
select auto,string,tiny,short,medium,long_int,longlong,real_float,real_double,utiny,ushort,umedium,ulong,ulonglong,mod(floor(time_stamp/1000000),1000000)-mod(curdate(),1000000),date_field,time_field,date_time,blob_col,tinyblob_col,mediumblob_col,longblob_col from t1;
auto string tiny short medium long_int longlong real_float real_double utiny ushort umedium ulong ulonglong mod(floor(time_stamp/1000000),1000000)-mod(curdate(),1000000) date_field time_field date_time blob_col tinyblob_col mediumblob_col longblob_col
@ -163,12 +165,12 @@ PRIMARY KEY (auto)
);
INSERT INTO t2 (string,mediumblob_col,new_field) SELECT string,mediumblob_col,new_field from t1 where auto > 10;
Warnings:
Warning 1263 Data truncated for column 'new_field' at row 2
Warning 1263 Data truncated for column 'new_field' at row 3
Warning 1263 Data truncated for column 'new_field' at row 4
Warning 1263 Data truncated for column 'new_field' at row 5
Warning 1263 Data truncated for column 'new_field' at row 6
Warning 1263 Data truncated for column 'new_field' at row 7
Warning 1264 Data truncated for column 'new_field' at row 2
Warning 1264 Data truncated for column 'new_field' at row 3
Warning 1264 Data truncated for column 'new_field' at row 4
Warning 1264 Data truncated for column 'new_field' at row 5
Warning 1264 Data truncated for column 'new_field' at row 6
Warning 1264 Data truncated for column 'new_field' at row 7
select * from t2;
auto string mediumblob_col new_field
1 2 2 ne
@ -200,9 +202,9 @@ one one
drop table t2;
create table t2 select * from t1;
Warnings:
Warning 1263 Data truncated for column 'options' at row 4
Warning 1263 Data truncated for column 'options' at row 5
Warning 1263 Data truncated for column 'options' at row 6
Warning 1264 Data truncated for column 'options' at row 4
Warning 1264 Data truncated for column 'options' at row 5
Warning 1264 Data truncated for column 'options' at row 6
update t2 set string="changed" where auto=16;
show full columns from t1;
Field Type Collation Null Key Default Extra Privileges Comment

View File

@ -13,3 +13,5 @@ t1 CREATE TABLE `t1` (
`a` set('','a','b') NOT NULL default 'b'
) TYPE=MyISAM CHARSET=latin1
drop table t1;
CREATE TABLE t1 ( user varchar(64) NOT NULL default '', path varchar(255) NOT NULL default '', privilege set('select','RESERVED30','RESERVED29','RESERVED28','RESERVED27','RESERVED26', 'RESERVED25','RESERVED24','data.delete','RESERVED22','RESERVED21', 'RESERVED20','data.insert.none','data.insert.approve', 'data.insert.delete','data.insert.move','data.insert.propose', 'data.insert.reject','RESERVED13','RESERVED12','RESERVED11','RESERVED10', 'RESERVED09','data.update','RESERVED07','RESERVED06','RESERVED05', 'RESERVED04','metadata.delete','metadata.put','RESERVED01','RESERVED00') NOT NULL default '', KEY user (user) ) TYPE=MyISAM CHARSET=utf8;
DROP TABLE t1;

View File

@ -25,9 +25,9 @@ t
36:30:31
insert into t1 values("10.22.22"),(1234567),(123456789),(123456789.10),("10 22:22"),("12.45a");
Warnings:
Warning 1262 Data truncated, out of range for column 't' at row 2
Warning 1262 Data truncated, out of range for column 't' at row 3
Warning 1262 Data truncated, out of range for column 't' at row 4
Warning 1263 Data truncated, out of range for column 't' at row 2
Warning 1263 Data truncated, out of range for column 't' at row 3
Warning 1263 Data truncated, out of range for column 't' at row 4
select * from t1;
t
10:22:33

View File

@ -1,9 +1,10 @@
drop table if exists t1;
SET SQL_WARNINGS=1;
create table t1 (this int unsigned);
insert into t1 values (1);
insert into t1 values (-1);
Warnings:
Warning 1262 Data truncated, out of range for column 'this' at row 1
Warning 1263 Data truncated, out of range for column 'this' at row 1
select * from t1;
this
1

View File

@ -90,6 +90,20 @@ explain (select a,b from t1 limit 2) union all (select a,b from t2 order by a l
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1 ALL NULL NULL NULL NULL 4
2 UNION t2 ALL NULL NULL NULL NULL 4 Using filesort
(select sql_calc_found_rows a,b from t1 limit 2) union all (select a,b from t2 order by a) limit 2;
a b
1 a
2 b
select found_rows();
found_rows()
6
select sql_calc_found_rows a,b from t1 union all select a,b from t2 limit 2;
a b
1 a
2 b
select found_rows();
found_rows()
6
explain select a,b from t1 union all select a,b from t2;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1 ALL NULL NULL NULL NULL 4
@ -269,6 +283,35 @@ uid rl g1 cid gg
uid rl g1 cid gg
1 NULL V1 NULL 1
drop table t1,t2,t3,t4,t5,t6;
CREATE TABLE t1 (a int not null, b char (10) not null);
insert into t1 values(1,'a'),(2,'b'),(3,'c'),(3,'c');
CREATE TABLE t2 (a int not null, b char (10) not null);
insert into t2 values (3,'c'),(4,'d'),(5,'f'),(6,'e');
create table t3 select a,b from t1 union select a,b from t2;
create table t4 (select a,b from t1) union (select a,b from t2) limit 2;
insert into t4 select a,b from t1 union select a,b from t2;
insert into t3 (select a,b from t1) union (select a,b from t2) limit 2;
select * from t3;
a b
1 a
2 b
3 c
4 d
5 f
6 e
1 a
2 b
select * from t4;
a b
1 a
2 b
1 a
2 b
3 c
4 d
5 f
6 e
drop table t1,t2,t3,t4;
CREATE TABLE t1 ( id int(3) unsigned default '0') TYPE=MyISAM;
INSERT INTO t1 (id) VALUES("1");
CREATE TABLE t2 ( id int(3) unsigned default '0', id_master int(5) default '0', text1 varchar(5) default NULL, text2 varchar(5) default NULL) TYPE=MyISAM;
@ -322,9 +365,22 @@ explain (select * from t1 where a=1 and b=10) union (select t1.a,t2.a from t1,t2
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
2 UNION t1 index PRIMARY PRIMARY 4 NULL 4 Using index
2 UNION t2 index PRIMARY PRIMARY 4 NULL 4 Using where; Using index
2 UNION t2 index PRIMARY PRIMARY 4 NULL 3 Using where; Using index
explain (select * from t1 where a=1) union (select * from t1 where b=1);
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1 const PRIMARY PRIMARY 4 const 1
2 UNION t1 ref b b 5 const 1 Using where
drop table t1,t2;
create table t1 ( id int not null auto_increment, primary key (id) ,user_name text );
create table t2 ( id int not null auto_increment, primary key (id) ,group_name text );
create table t3 ( id int not null auto_increment, primary key (id) ,user_id int ,index user_idx (user_id) ,foreign key (user_id) references users(id) ,group_id int ,index group_idx (group_id) ,foreign key (group_id) references groups(id) );
insert into t1 (user_name) values ('Tester');
insert into t2 (group_name) values ('Group A');
insert into t2 (group_name) values ('Group B');
insert into t3 (user_id, group_id) values (1,1);
select 1 'is_in_group', a.user_name, c.group_name, b.id from t1 a, t3 b, t2 c where a.id = b.user_id and b.group_id = c.id UNION select 0 'is_in_group', a.user_name, c.group_name, null from t1 a, t2 c;
is_in_group user_name group_name id
1 Tester Group A 1
0 Tester Group A NULL
0 Tester Group B NULL
drop table t1, t2, t3;

View File

@ -30,3 +30,15 @@ explain select * from t1 where i=@vv1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref i i 4 const 1 Using where
drop table t1,t2;
select @a:=10, @b:=1, @a > @b, @a < @b;
@a:=10 @b:=1 @a > @b @a < @b
10 1 1 0
select @a:="10", @b:="1", @a > @b, @a < @b;
@a:="10" @b:="1" @a > @b @a < @b
10 1 1 0
select @a:=10, @b:=2, @a > @b, @a < @b;
@a:=10 @b:=2 @a > @b @a < @b
10 2 1 0
select @a:="10", @b:="2", @a > @b, @a < @b;
@a:="10" @b:="2" @a > @b @a < @b
10 2 0 1

View File

@ -184,6 +184,8 @@ set GLOBAL table_type=DEFAULT;
ERROR 42000: Variable 'table_type' doesn't have a default value
set character_set_client=UNKNOWN_CHARACTER_SET;
ERROR 42000: Unknown character set: 'UNKNOWN_CHARACTER_SET'
set collation_connection=UNKNOWN_COLLATION;
ERROR HY000: Unknown collation: 'UNKNOWN_COLLATION'
set global autocommit=1;
ERROR HY000: Variable 'autocommit' is a LOCAL variable and can't be used with SET GLOBAL
select @@global.timestamp;

View File

@ -2,23 +2,24 @@ drop table if exists t1, t2;
Warnings:
Note 1051 Unknown table 't1'
Note 1051 Unknown table 't2'
SET SQL_WARNINGS=1;
create table t1 (a int);
insert into t1 values (1);
insert into t1 values ("hej");
Warnings:
Warning 1263 Data truncated for column 'a' at row 1
Warning 1264 Data truncated for column 'a' at row 1
insert into t1 values ("hej"),("d<>");
Warnings:
Warning 1263 Data truncated for column 'a' at row 1
Warning 1263 Data truncated for column 'a' at row 2
Warning 1264 Data truncated for column 'a' at row 1
Warning 1264 Data truncated for column 'a' at row 2
set SQL_WARNINGS=1;
insert into t1 values ("hej");
Warnings:
Warning 1263 Data truncated for column 'a' at row 1
Warning 1264 Data truncated for column 'a' at row 1
insert into t1 values ("hej"),("d<>");
Warnings:
Warning 1263 Data truncated for column 'a' at row 1
Warning 1263 Data truncated for column 'a' at row 2
Warning 1264 Data truncated for column 'a' at row 1
Warning 1264 Data truncated for column 'a' at row 2
drop table t1;
set SQL_WARNINGS=0;
drop temporary table if exists not_exists;
@ -45,13 +46,13 @@ drop table t1;
create table t1(a tinyint, b int not null, c date, d char(5));
load data infile '../../std_data/warnings_loaddata.dat' into table t1 fields terminated by ',';
Warnings:
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'b' at row 2
Warning 1263 Data truncated for column 'd' at row 3
Warning 1263 Data truncated for column 'c' at row 4
Warning 1259 Record count is fewer than the column count at row 5
Warning 1263 Data truncated for column 'b' at row 6
Warning 1260 Record count is more than the column count at row 7
Warning 1262 Data truncated, out of range for column 'a' at row 8
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'b' at row 2
Warning 1264 Data truncated for column 'd' at row 3
Warning 1264 Data truncated for column 'c' at row 4
Warning 1260 Record count is fewer than the column count at row 5
Warning 1264 Data truncated for column 'b' at row 6
Warning 1261 Record count is more than the column count at row 7
Warning 1263 Data truncated, out of range for column 'a' at row 8
select @@warning_count;
@@warning_count
7
@ -59,42 +60,42 @@ drop table t1;
create table t1(a tinyint NOT NULL, b tinyint unsigned, c char(5));
insert into t1 values(NULL,100,'mysql'),(10,-1,'mysql ab'),(500,256,'open source'),(20,NULL,'test');
Warnings:
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'a' at row 1
Warning 1262 Data truncated, out of range for column 'b' at row 2
Warning 1263 Data truncated for column 'c' at row 2
Warning 1262 Data truncated, out of range for column 'a' at row 3
Warning 1262 Data truncated, out of range for column 'b' at row 3
Warning 1263 Data truncated for column 'c' at row 3
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'a' at row 1
Warning 1263 Data truncated, out of range for column 'b' at row 2
Warning 1264 Data truncated for column 'c' at row 2
Warning 1263 Data truncated, out of range for column 'a' at row 3
Warning 1263 Data truncated, out of range for column 'b' at row 3
Warning 1264 Data truncated for column 'c' at row 3
alter table t1 modify c char(4);
Warnings:
Warning 1263 Data truncated for column 'c' at row 1
Warning 1263 Data truncated for column 'c' at row 2
Warning 1264 Data truncated for column 'c' at row 1
Warning 1264 Data truncated for column 'c' at row 2
alter table t1 add d char(2);
update t1 set a=NULL where a=10;
Warnings:
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'a' at row 2
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'a' at row 2
update t1 set c='mysql ab' where c='test';
Warnings:
Warning 1263 Data truncated for column 'c' at row 4
Warning 1264 Data truncated for column 'c' at row 4
update t1 set d=c;
Warnings:
Warning 1263 Data truncated for column 'd' at row 1
Warning 1263 Data truncated for column 'd' at row 2
Warning 1263 Data truncated for column 'd' at row 3
Warning 1263 Data truncated for column 'd' at row 4
Warning 1264 Data truncated for column 'd' at row 1
Warning 1264 Data truncated for column 'd' at row 2
Warning 1264 Data truncated for column 'd' at row 3
Warning 1264 Data truncated for column 'd' at row 4
create table t2(a tinyint NOT NULL, b char(3));
insert into t2 select b,c from t1;
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warning 1263 Data truncated for column 'b' at row 2
Warning 1263 Data truncated for column 'b' at row 3
Warning 1261 Data truncated, NULL supplied to NOT NULL column 'a' at row 4
Warning 1263 Data truncated for column 'b' at row 4
Warning 1264 Data truncated for column 'b' at row 1
Warning 1264 Data truncated for column 'b' at row 2
Warning 1264 Data truncated for column 'b' at row 3
Warning 1262 Data truncated, NULL supplied to NOT NULL column 'a' at row 4
Warning 1264 Data truncated for column 'b' at row 4
insert into t2(b) values('mysqlab');
set sql_warnings=1;
insert into t2(b) values('mysqlab');
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warning 1264 Data truncated for column 'b' at row 1
set sql_warnings=0;
drop table t1, t2;
create table t1(a char(10));
@ -102,24 +103,24 @@ alter table t1 add b char;
set max_error_count=10;
update t1 set b=a;
Warnings:
Warning 1263 Data truncated for column 'b' at row 1
Warning 1263 Data truncated for column 'b' at row 2
Warning 1263 Data truncated for column 'b' at row 3
Warning 1263 Data truncated for column 'b' at row 4
Warning 1263 Data truncated for column 'b' at row 5
Warning 1263 Data truncated for column 'b' at row 6
Warning 1263 Data truncated for column 'b' at row 7
Warning 1263 Data truncated for column 'b' at row 8
Warning 1263 Data truncated for column 'b' at row 9
Warning 1263 Data truncated for column 'b' at row 10
Warning 1264 Data truncated for column 'b' at row 1
Warning 1264 Data truncated for column 'b' at row 2
Warning 1264 Data truncated for column 'b' at row 3
Warning 1264 Data truncated for column 'b' at row 4
Warning 1264 Data truncated for column 'b' at row 5
Warning 1264 Data truncated for column 'b' at row 6
Warning 1264 Data truncated for column 'b' at row 7
Warning 1264 Data truncated for column 'b' at row 8
Warning 1264 Data truncated for column 'b' at row 9
Warning 1264 Data truncated for column 'b' at row 10
select @@warning_count;
@@warning_count
50
drop table t1;
create table t1 (id int) type=isam;
Warnings:
Warning 1264 Using storage engine MYISAM for table 't1'
Warning 1265 Using storage engine MYISAM for table 't1'
alter table t1 type=isam;
Warnings:
Warning 1264 Using storage engine MYISAM for table 't1'
Warning 1265 Using storage engine MYISAM for table 't1'
drop table t1;

View File

@ -65,3 +65,24 @@ INSERT INTO t1 VALUES (3359362,406,3359362,'Mustermann Musterfrau',7001,'2000-05
SELECT ELT(FIELD(kundentyp,'PP','PPA','PG','PGA','FK','FKA','FP','FPA','K','KA','V','VA',''), 'Privat (Private Nutzung)','Privat (Private Nutzung) Sitz im Ausland','Privat (geschaeftliche Nutzung)','Privat (geschaeftliche Nutzung) Sitz im Ausland','Firma (Kapitalgesellschaft)','Firma (Kapitalgesellschaft) Sitz im Ausland','Firma (Personengesellschaft)','Firma (Personengesellschaft) Sitz im Ausland','oeff. rechtl. Koerperschaft','oeff. rechtl. Koerperschaft Sitz im Ausland','Eingetragener Verein','Eingetragener Verein Sitz im Ausland','Typ unbekannt') AS Kundentyp ,kategorie FROM t1 WHERE hdl_nr < 2000000 AND kategorie IN ('Prepaid','Mobilfunk') AND st_klasse = 'Workflow' GROUP BY kundentyp ORDER BY kategorie;
drop table t1;
#
# test case for #570
#
CREATE TABLE t1 (
AUFNR varchar(12) NOT NULL default '',
PLNFL varchar(6) NOT NULL default '',
VORNR varchar(4) NOT NULL default '',
xstatus_vor smallint(5) unsigned NOT NULL default '0',
);
INSERT INTO t1 VALUES ('40004712','000001','0010',9);
INSERT INTO t1 VALUES ('40004712','000001','0020',0);
UPDATE t1 SET t1.xstatus_vor = Greatest(t1.xstatus_vor,1) WHERE t1.aufnr =
"40004712" AND t1.plnfl = "000001" AND t1.vornr > "0010" ORDER BY t1.vornr
ASC LIMIT 1;
drop table t1;

View File

@ -171,3 +171,65 @@ alter table t1 change a a char(10) character set koi8r;
select a,hex(a) from t1;
drop table t1;
#
# Test ALTER TABLE ENABLE/DISABLE keys when things are locked
#
CREATE TABLE t1 (
Host varchar(16) binary NOT NULL default '',
User varchar(16) binary NOT NULL default '',
PRIMARY KEY (Host,User)
) TYPE=MyISAM;
ALTER TABLE t1 DISABLE KEYS;
LOCK TABLES t1 WRITE;
INSERT INTO t1 VALUES ('localhost','root'),('localhost',''),('games','monty');
SHOW INDEX FROM t1;
ALTER TABLE t1 ENABLE KEYS;
UNLOCK TABLES;
CHECK TABLES t1;
DROP TABLE t1;
#
# Test with two keys
#
CREATE TABLE t1 (
Host varchar(16) binary NOT NULL default '',
User varchar(16) binary NOT NULL default '',
PRIMARY KEY (Host,User),
KEY (Host)
) TYPE=MyISAM;
ALTER TABLE t1 DISABLE KEYS;
SHOW INDEX FROM t1;
LOCK TABLES t1 WRITE;
INSERT INTO t1 VALUES ('localhost','root'),('localhost','');
SHOW INDEX FROM t1;
ALTER TABLE t1 ENABLE KEYS;
SHOW INDEX FROM t1;
UNLOCK TABLES;
CHECK TABLES t1;
# Test RENAME with LOCK TABLES
LOCK TABLES t1 WRITE;
ALTER TABLE t1 RENAME t2;
UNLOCK TABLES;
select * from t2;
DROP TABLE t2;
#
# Test disable keys with locking
#
CREATE TABLE t1 (
Host varchar(16) binary NOT NULL default '',
User varchar(16) binary NOT NULL default '',
PRIMARY KEY (Host,User),
KEY (Host)
) TYPE=MyISAM;
LOCK TABLES t1 WRITE;
ALTER TABLE t1 DISABLE KEYS;
SHOW INDEX FROM t1;
DROP TABLE t1;

View File

@ -4,6 +4,7 @@
--disable_warnings
drop table if exists t1;
--enable_warnings
SET SQL_WARNINGS=1;
create table t1 (a int not null auto_increment,b int, primary key (a)) type=myisam auto_increment=3;
insert into t1 values (1,1),(NULL,3),(NULL,4);
@ -106,3 +107,36 @@ select last_insert_id();
drop table t1;
create table t1(a int auto_increment,b int null,primary key(a));
SET SQL_MODE=NO_AUTO_VALUE_ON_ZERO;
insert into t1(a,b)values(NULL,1);
insert into t1(a,b)values(200,2);
insert into t1(a,b)values(0,3);
insert into t1(b)values(4);
insert into t1(b)values(5);
insert into t1(b)values(6);
insert into t1(b)values(7);
select * from t1 order by b;
delete from t1 where a=0;
update t1 set a=0 where b=5;
select * from t1 order by b;
delete from t1 where a=0;
update t1 set a=NULL where b=6;
update t1 set a=300 where b=7;
SET SQL_MODE='';
insert into t1(a,b)values(NULL,8);
insert into t1(a,b)values(400,9);
insert into t1(a,b)values(0,10);
insert into t1(b)values(11);
insert into t1(b)values(12);
insert into t1(b)values(13);
insert into t1(b)values(14);
select * from t1 order by b;
delete from t1 where a=0;
update t1 set a=0 where b=12;
select * from t1 order by b;
delete from t1 where a=0;
update t1 set a=NULL where b=13;
update t1 set a=500 where b=14;
select * from t1 order by b;
drop table t1;

View File

@ -60,14 +60,14 @@ CREATE TABLE t1 SELECT
SHOW CREATE TABLE t1;
DROP TABLE t1;
--error 1265
--error 1266
SELECT CASE
WHEN 1
THEN _latin1'a' COLLATE latin1_danish_ci
ELSE _latin1'a' COLLATE latin1_swedish_ci
END;
--error 1268
--error 1269
SELECT CASE _latin1'a' COLLATE latin1_general_ci
WHEN _latin1'a' COLLATE latin1_danish_ci THEN 1
WHEN _latin1'a' COLLATE latin1_swedish_ci THEN 2
@ -90,9 +90,9 @@ CASE _latin1'a' WHEN _latin1'A' COLLATE latin1_bin THEN '1' ELSE 2 END
#
# Check COALESCE argument types aggregation
--error 1265
--error 1266
CREATE TABLE t1 SELECT COALESCE(_latin1'a',_latin2'a');
--error 1265
--error 1266
CREATE TABLE t1 SELECT COALESCE('a' COLLATE latin1_swedish_ci,'b' COLLATE latin1_bin);
CREATE TABLE t1 SELECT
COALESCE(1), COALESCE(1.0),COALESCE('a'),

View File

@ -23,6 +23,47 @@ create table t1 select cast(_koi8r'
show create table t1;
drop table t1;
#
# CAST to CHAR with/without length
#
select
cast(_latin1'ab' AS char) as c1,
cast(_latin1'a ' AS char) as c2,
cast(_latin1'abc' AS char(2)) as c3,
cast(_latin1'a ' AS char(2)) as c4,
cast(_latin1'a' AS char(2)) as c5;
create table t1 select
cast(_latin1'ab' AS char) as c1,
cast(_latin1'a ' AS char) as c2,
cast(_latin1'abc' AS char(2)) as c3,
cast(_latin1'a ' AS char(2)) as c4,
cast(_latin1'a' AS char(2)) as c5;
select * from t1;
show create table t1;
drop table t1;
#
# CAST to NCHAR with/without length
#
select
cast(_koi8r'<27><>' AS nchar) as c1,
cast(_koi8r'<27> ' AS nchar) as c2,
cast(_koi8r'<27><><EFBFBD>' AS nchar(2)) as c3,
cast(_koi8r'<27> ' AS nchar(2)) as c4,
cast(_koi8r'<27>' AS nchar(2)) as c5;
create table t1 select
cast(_koi8r'<27><>' AS nchar) as c1,
cast(_koi8r'<27> ' AS nchar) as c2,
cast(_koi8r'<27><><EFBFBD>' AS nchar(2)) as c3,
cast(_koi8r'<27> ' AS nchar(2)) as c4,
cast(_koi8r'<27>' AS nchar(2)) as c5;
select * from t1;
show create table t1;
drop table t1;
#
# The following should be fixed in 4.1
#

View File

@ -0,0 +1,55 @@
#
# this is a test for error 1032 in count(distinct) + group by, introduced in
# mysql-4.1
#
--disable_warnings
DROP TABLE IF EXISTS t1, t2;
--enable_warnings
CREATE TABLE t1 (id INTEGER, grp TINYINT, id_rev INTEGER);
--disable_query_log
SET @rnd_max= 2147483647;
let $1 = 1000;
while ($1)
{
SET @rnd= RAND();
SET @id = CAST(@rnd * @rnd_max AS UNSIGNED);
SET @id_rev= @rnd_max - @id;
SET @grp= CAST(128.0 * @rnd AS UNSIGNED);
INSERT INTO t1 (id, grp, id_rev) VALUES (@id, @grp, @id_rev);
dec $1;
}
CREATE TABLE t2 SELECT * FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
DROP TABLE t2;
--enable_query_log
SELECT COUNT(*) FROM t1;
# As t1 contains random numbers, results are different from test to test.
# That's okay, because we test only that select doesn't yield an
# error. Note, that --disable_result_log doesn't suppress error output.
--disable_result_log
SELECT COUNT(DISTINCT id) FROM t1 GROUP BY grp;
--enable_result_log
DROP TABLE t1;

View File

@ -215,3 +215,10 @@ CREATE TABLE t1 (a int not null);
show create table t1;
SET SESSION table_type=default;
drop table t1;
#
# Bug # 801
#
create table t1 select x'4132';
drop table t1;

View File

@ -7,11 +7,16 @@ CREATE TABLE t1 (
latin1_f CHAR(32) CHARACTER SET latin1 NOT NULL
);
--error 1251
--error 1252
CREATE TABLE t2 (
latin1_f CHAR(32) CHARACTER SET latin1 COLLATE koi8r_general_ci NOT NULL
);
--error 1272
CREATE TABLE t2 (
latin1_f CHAR(32) CHARACTER SET latin1 COLLATE some_non_existing_col NOT NULL
);
INSERT INTO t1 (latin1_f) VALUES (_latin1'A');
INSERT INTO t1 (latin1_f) VALUES (_latin1'a');
@ -61,7 +66,7 @@ SELECT latin1_f FROM t1 ORDER BY latin1_f COLLATE latin1_swedish_ci;
SELECT latin1_f FROM t1 ORDER BY latin1_f COLLATE latin1_german2_ci;
SELECT latin1_f FROM t1 ORDER BY latin1_f COLLATE latin1_general_ci;
SELECT latin1_f FROM t1 ORDER BY latin1_f COLLATE latin1_bin;
--error 1251
--error 1252
SELECT latin1_f FROM t1 ORDER BY latin1_f COLLATE koi8r_general_ci;
--SELECT latin1_f COLLATE koi8r FROM t1 ;
@ -71,7 +76,7 @@ SELECT latin1_f COLLATE latin1_swedish_ci AS latin1_f_as FROM t1 ORDER BY latin1
SELECT latin1_f COLLATE latin1_german2_ci AS latin1_f_as FROM t1 ORDER BY latin1_f_as;
SELECT latin1_f COLLATE latin1_general_ci AS latin1_f_as FROM t1 ORDER BY latin1_f_as;
SELECT latin1_f COLLATE latin1_bin AS latin1_f_as FROM t1 ORDER BY latin1_f_as;
--error 1251
--error 1252
SELECT latin1_f COLLATE koi8r_general_ci AS latin1_f_as FROM t1 ORDER BY latin1_f_as;
@ -82,7 +87,7 @@ SELECT latin1_f,count(*) FROM t1 GROUP BY latin1_f COLLATE latin1_swedish_ci;
SELECT latin1_f,count(*) FROM t1 GROUP BY latin1_f COLLATE latin1_german2_ci;
SELECT latin1_f,count(*) FROM t1 GROUP BY latin1_f COLLATE latin1_general_ci;
SELECT latin1_f,count(*) FROM t1 GROUP BY latin1_f COLLATE latin1_bin;
--error 1251
--error 1252
SELECT latin1_f,count(*) FROM t1 GROUP BY latin1_f COLLATE koi8r_general_ci;
@ -93,7 +98,7 @@ SELECT DISTINCT latin1_f COLLATE latin1_swedish_ci FROM t1;
SELECT DISTINCT latin1_f COLLATE latin1_german2_ci FROM t1;
SELECT DISTINCT latin1_f COLLATE latin1_general_ci FROM t1;
SELECT DISTINCT latin1_f COLLATE latin1_bin FROM t1;
--error 1251
--error 1272
SELECT DISTINCT latin1_f COLLATE koi8r FROM t1;
@ -143,3 +148,10 @@ SELECT charset('a'),collation('a'),coercibility('a'),'a'='A';
SET CHARACTER SET 'DEFAULT';
DROP TABLE t1;
CREATE TABLE t1
(s1 CHAR(5) COLLATE latin1_german1_ci,
s2 CHAR(5) COLLATE latin1_swedish_ci);
--error 1266
SELECT * FROM t1 WHERE s1 = s2;
DROP TABLE t1;

View File

@ -0,0 +1,2 @@
--default-character-set=cp1251 --new

View File

@ -0,0 +1,17 @@
# Test of charset cp1251
--disable_warnings
drop table if exists t1;
--enable_warnings
#
# Test problem with LEFT() (Bug #514)
#
create table t1 (a varchar(10) not null);
insert into t1 values ("a"),("ab"),("abc");
select * from t1;
select a, left(a,1) as b from t1;
select a, left(a,1) as b from t1 group by a;
SELECT DISTINCT RIGHT(a,1) from t1;
drop table t1;

View File

@ -1,9 +1,13 @@
#
# Test latin_de character set
#
select @@collation_connection;
--disable_warnings
drop table if exists t1;
--enable_warnings
create table t1 (a char (20) not null, b int not null auto_increment, index (a,b));
insert into t1 (a) values ('<27>'),('ac'),('ae'),('ad'),('<27>c'),('aeb');
insert into t1 (a) values ('<27>c'),('uc'),('ue'),('ud'),('<27>'),('ueb'),('uf');
@ -36,6 +40,10 @@ select strcmp('af','
select strcmp('<27>a','ss'),strcmp('ssa','<27>'),strcmp('sssb','s<>a'),strcmp('<27>','s');
select strcmp('u','<27>a'),strcmp('u','<27>');
#
# overlapping combo's
#
select strcmp('s<>', '<27>a'), strcmp('a<>', '<27>x');
#
# Some other simple tests with the current character set
#
@ -73,3 +81,14 @@ select * from t1 where word like 'AE';
select * from t1 where word like binary 0xDF;
select * from t1 where word like CAST(0xDF as CHAR);
drop table t1;
CREATE TABLE t1 (
s1 CHAR(5) CHARACTER SET latin1 COLLATE latin1_german2_ci
);
INSERT INTO t1 VALUES ('<27>');
INSERT INTO t1 VALUES ('ue');
SELECT DISTINCT s1 FROM t1;
SELECT s1,COUNT(*) FROM t1 GROUP BY s1;
SELECT COUNT(DISTINCT s1) FROM t1;
SELECT FIELD('ue',s1), FIELD('<27>',s1), s1='ue', s1='<27>' FROM t1;
DROP TABLE t1;

Some files were not shown because too many files have changed in this diff Show More