--disable_warnings drop table if exists `T1`; drop table if exists `T2`; drop table if exists `T3`; drop table if exists `T4`; drop table if exists `T5`; drop table if exists `T6`; drop table if exists `T7`; drop table if exists `T8`; drop table if exists `T9`; drop table if exists `T10`; drop table if exists `T11`; drop table if exists `T12`; --enable_warnings # # Test subquery using Japanese characters in utf8 encoding # SET NAMES utf8; SET character_set_database = utf8; CREATE TABLE `T1a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = innodb; CREATE TABLE `T1b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = innodb; CREATE TABLE `T2a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = innodb; CREATE TABLE `T2b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = innodb; CREATE TABLE `T3a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = innodb; CREATE TABLE `T3b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = innodb; CREATE TABLE `T4a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = myisam; CREATE TABLE `T4b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = myisam; CREATE TABLE `T5a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = myisam; CREATE TABLE `T5b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = myisam; CREATE TABLE `T6a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = myisam; CREATE TABLE `T6b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = myisam; CREATE TABLE `T7a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = heap; CREATE TABLE `T7b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = heap; CREATE TABLE `T8a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = heap; CREATE TABLE `T8b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = heap; CREATE TABLE `T9a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = heap; CREATE TABLE `T9b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = heap; CREATE TABLE `T10a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = heap; CREATE TABLE `T10b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = heap; CREATE TABLE `T11a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = heap; CREATE TABLE `T11b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = heap; CREATE TABLE `T12a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = heap; CREATE TABLE `T12b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = heap; #insert the following data in each table # jisx0201 hankaku-katakana data # jisx0208 data # jisx0212 supplemental character data INSERT INTO `T1a` VALUES ('ア'),('カ'),('サ'); INSERT INTO `T1b` VALUES ('ア'); INSERT INTO `T2a` VALUES ('あ'),('か'),('さ'); INSERT INTO `T2b` VALUES ('あ'); INSERT INTO `T3a` VALUES ('龔'),('龖'),('龗'); INSERT INTO `T3b` VALUES ('龔'); INSERT INTO `T4a` VALUES ('ア'),('カ'),('サ'); INSERT INTO `T4b` VALUES ('ア'); INSERT INTO `T5a` VALUES ('あ'),('か'),('さ'); INSERT INTO `T5b` VALUES ('あ'); INSERT INTO `T6a` VALUES ('龔'),('龖'),('龗'); INSERT INTO `T6b` VALUES ('龔'); INSERT INTO `T7a` VALUES ('ア'),('カ'),('サ'); INSERT INTO `T7b` VALUES ('ア'); INSERT INTO `T8a` VALUES ('あ'),('か'),('さ'); INSERT INTO `T8b` VALUES ('あ'); INSERT INTO `T9a` VALUES ('龔'),('龖'),('龗'); INSERT INTO `T9b` VALUES ('龔'); INSERT INTO `T10a` VALUES ('ア'),('カ'),('サ'); INSERT INTO `T10b` VALUES ('ア'); INSERT INTO `T11a` VALUES ('あ'),('か'),('さ'); INSERT INTO `T11b` VALUES ('あ'); INSERT INTO `T12a` VALUES ('龔'),('龖'),('龗'); INSERT INTO `T12b` VALUES ('龔'); #Test for innodb SELECT `C1` FROM `T1a` WHERE `C1` IN (SELECT `C1` FROM `T1b`); SELECT `C1` FROM `T1a` WHERE EXISTS (SELECT `C1` FROM `T1b` WHERE `T1a`.`C1` = `T1b`.`C1`); SELECT `C1` FROM `T1a` WHERE NOT EXISTS (SELECT `C1` FROM `T1b` WHERE `T1a`.`C1` = `T1b`.`C1`); SELECT `C1` FROM `T2a` WHERE `C1` IN (SELECT `C1` FROM `T2b`); SELECT `C1` FROM `T2a` WHERE EXISTS (SELECT `C1` FROM `T2b` WHERE `T2a`.`C1` = `T2b`.`C1`); SELECT `C1` FROM `T2a` WHERE NOT EXISTS (SELECT `C1` FROM `T2b` WHERE `T2a`.`C1` = `T2b`.`C1`); SELECT `C1` FROM `T3a` WHERE `C1` IN (SELECT `C1` FROM `T3b`); SELECT `C1` FROM `T3a` WHERE EXISTS (SELECT `C1` FROM `T3b` WHERE `T3a`.`C1` = `T3b`.`C1`); SELECT `C1` FROM `T3a` WHERE NOT EXISTS (SELECT `C1` FROM `T3b` WHERE `T3a`.`C1` = `T3b`.`C1`); SELECT `C1` FROM `T4a` WHERE `C1` IN (SELECT `C1` FROM `T4b`); SELECT `C1` FROM `T4a` WHERE EXISTS (SELECT `C1` FROM `T4b` WHERE `T4a`.`C1` = `T4b`.`C1`); SELECT `C1` FROM `T4a` WHERE NOT EXISTS (SELECT `C1` FROM `T4b` WHERE `T4a`.`C1` = `T4b`.`C1`); SELECT `C1` FROM `T5a` WHERE `C1` IN (SELECT `C1` FROM `T5b`); SELECT `C1` FROM `T5a` WHERE EXISTS (SELECT `C1` FROM `T5b` WHERE `T5a`.`C1` = `T5b`.`C1`); SELECT `C1` FROM `T5a` WHERE NOT EXISTS (SELECT `C1` FROM `T5b` WHERE `T5a`.`C1` = `T5b`.`C1`); SELECT `C1` FROM `T6a` WHERE `C1` IN (SELECT `C1` FROM `T6b`); SELECT `C1` FROM `T6a` WHERE EXISTS (SELECT `C1` FROM `T6b` WHERE `T6a`.`C1` = `T6b`.`C1`); SELECT `C1` FROM `T6a` WHERE NOT EXISTS (SELECT `C1` FROM `T6b` WHERE `T6a`.`C1` = `T6b`.`C1`); SELECT `C1` FROM `T7a` WHERE `C1` IN (SELECT `C1` FROM `T7b`); SELECT `C1` FROM `T7a` WHERE EXISTS (SELECT `C1` FROM `T7b` WHERE `T7a`.`C1` = `T7b`.`C1`); SELECT `C1` FROM `T7a` WHERE NOT EXISTS (SELECT `C1` FROM `T7b` WHERE `T7a`.`C1` = `T7b`.`C1`); SELECT `C1` FROM `T8a` WHERE `C1` IN (SELECT `C1` FROM `T8b`); SELECT `C1` FROM `T8a` WHERE EXISTS (SELECT `C1` FROM `T8b` WHERE `T8a`.`C1` = `T8b`.`C1`); SELECT `C1` FROM `T8a` WHERE NOT EXISTS (SELECT `C1` FROM `T8b` WHERE `T8a`.`C1` = `T8b`.`C1`); SELECT `C1` FROM `T9a` WHERE `C1` IN (SELECT `C1` FROM `T9b`); SELECT `C1` FROM `T9a` WHERE EXISTS (SELECT `C1` FROM `T9b` WHERE `T9a`.`C1` = `T9b`.`C1`); SELECT `C1` FROM `T9a` WHERE NOT EXISTS (SELECT `C1` FROM `T9b` WHERE `T9a`.`C1` = `T9b`.`C1`); SELECT `C1` FROM `T10a` WHERE `C1` IN (SELECT `C1` FROM `T10b`); SELECT `C1` FROM `T10a` WHERE EXISTS (SELECT `C1` FROM `T10b` WHERE `T10a`.`C1` = `T10b`.`C1`); SELECT `C1` FROM `T10a` WHERE NOT EXISTS (SELECT `C1` FROM `T10b` WHERE `T10a`.`C1` = `T10b`.`C1`); SELECT `C1` FROM `T11a` WHERE `C1` IN (SELECT `C1` FROM `T11b`); SELECT `C1` FROM `T11a` WHERE EXISTS (SELECT `C1` FROM `T11b` WHERE `T11a`.`C1` = `T11b`.`C1`); SELECT `C1` FROM `T11a` WHERE NOT EXISTS (SELECT `C1` FROM `T11b` WHERE `T11a`.`C1` = `T11b`.`C1`); SELECT `C1` FROM `T12a` WHERE `C1` IN (SELECT `C1` FROM `T12b`); SELECT `C1` FROM `T12a` WHERE EXISTS (SELECT `C1` FROM `T12b` WHERE `T12a`.`C1` = `T12b`.`C1`); SELECT `C1` FROM `T12a` WHERE NOT EXISTS (SELECT `C1` FROM `T12b` WHERE `T12a`.`C1` = `T12b`.`C1`); DROP TABLE `T1a`; DROP TABLE `T1b`; DROP TABLE `T2a`; DROP TABLE `T2b`; DROP TABLE `T3a`; DROP TABLE `T3b`; DROP TABLE `T4a`; DROP TABLE `T4b`; DROP TABLE `T5a`; DROP TABLE `T5b`; DROP TABLE `T6a`; DROP TABLE `T6b`; DROP TABLE `T7a`; DROP TABLE `T7b`; DROP TABLE `T8a`; DROP TABLE `T8b`; DROP TABLE `T9a`; DROP TABLE `T9b`; DROP TABLE `T10a`; DROP TABLE `T10b`; DROP TABLE `T11a`; DROP TABLE `T11b`; DROP TABLE `T12a`; DROP TABLE `T12b`;