1--source include/have_utf8.inc 2--source include/have_innodb.inc 3--disable_warnings 4drop table if exists `T1a`; 5drop table if exists `T1b`; 6drop table if exists `T2a`; 7drop table if exists `T2b`; 8drop table if exists `T3a`; 9drop table if exists `T3b`; 10drop table if exists `T4a`; 11drop table if exists `T4b`; 12drop table if exists `T5a`; 13drop table if exists `T5b`; 14drop table if exists `T6a`; 15drop table if exists `T6b`; 16drop table if exists `T7a`; 17drop table if exists `T7b`; 18drop table if exists `T8a`; 19drop table if exists `T8b`; 20drop table if exists `T9a`; 21drop table if exists `T9b`; 22--enable_warnings 23 24# 25# Test table JOIN using Japanese characters in utf8 26# 27 28SET NAMES utf8; 29SET character_set_database = utf8; 30 31CREATE TABLE `T1a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = InnoDB; 32CREATE TABLE `T1b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = InnoDB; 33CREATE TABLE `T2a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = InnoDB; 34CREATE TABLE `T2b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = InnoDB; 35CREATE TABLE `T3a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = InnoDB; 36CREATE TABLE `T3b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = InnoDB; 37CREATE TABLE `T4a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = MyISAM; 38CREATE TABLE `T4b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = MyISAM; 39CREATE TABLE `T5a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = MyISAM; 40CREATE TABLE `T5b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = MyISAM; 41CREATE TABLE `T6a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = MyISAM; 42CREATE TABLE `T6b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = MyISAM; 43CREATE TABLE `T7a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = MEMORY; 44CREATE TABLE `T7b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = MEMORY; 45CREATE TABLE `T8a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = MEMORY; 46CREATE TABLE `T8b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = MEMORY; 47CREATE TABLE `T9a` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = MEMORY; 48CREATE TABLE `T9b` (`C1` char(1) PRIMARY KEY) DEFAULT CHARSET = utf8 engine = MEMORY; 49 50#insert the following data in each table 51# jisx0201 hankaku-katakana data 52# jisx0208 data 53# jisx0212 supplemental character data 54 55INSERT INTO `T1a` VALUES ('ア'),('カ'),('サ'); 56INSERT INTO `T1b` VALUES ('ア'); 57INSERT INTO `T2a` VALUES ('あ'),('か'),('さ'); 58INSERT INTO `T2b` VALUES ('あ'); 59INSERT INTO `T3a` VALUES ('龔'),('龖'),('龗'); 60INSERT INTO `T3b` VALUES ('龔'); 61INSERT INTO `T4a` VALUES ('ア'),('カ'),('サ'); 62INSERT INTO `T4b` VALUES ('ア'); 63INSERT INTO `T5a` VALUES ('あ'),('か'),('さ'); 64INSERT INTO `T5b` VALUES ('あ'); 65INSERT INTO `T6a` VALUES ('龔'),('龖'),('龗'); 66INSERT INTO `T6b` VALUES ('龔'); 67INSERT INTO `T7a` VALUES ('ア'),('カ'),('サ'); 68INSERT INTO `T7b` VALUES ('ア'); 69INSERT INTO `T8a` VALUES ('あ'),('か'),('さ'); 70INSERT INTO `T8b` VALUES ('あ'); 71INSERT INTO `T9a` VALUES ('龔'),('龖'),('龗'); 72INSERT INTO `T9b` VALUES ('龔'); 73 74#Test for InnoDB 75SELECT * FROM `T1a` JOIN `T1b`; 76SELECT * FROM `T1a` INNER JOIN `T1b`; 77SELECT * FROM `T1a` JOIN `T1b` USING (`C1`); 78SELECT * FROM `T1a` INNER JOIN `T1b` USING (`C1`); 79SELECT * FROM `T1a` CROSS JOIN `T1b`; 80SELECT * FROM `T1a` LEFT JOIN `T1b` USING (`C1`); 81SELECT * FROM `T1a` LEFT JOIN `T1b` ON (`T1a`.`C1` = `T1b`.`C1`); 82SELECT * FROM `T1b` RIGHT JOIN `T1a` USING (`C1`); 83SELECT * FROM `T1b` RIGHT JOIN `T1a` ON (`T1a`.`C1` = `T1b`.`C1`); 84SELECT * FROM `T2a` JOIN `T2b`; 85SELECT * FROM `T2a` INNER JOIN `T2b`; 86SELECT * FROM `T2a` JOIN `T2b` USING (`C1`); 87SELECT * FROM `T2a` INNER JOIN `T2b` USING (`C1`); 88SELECT * FROM `T2a` CROSS JOIN `T2b`; 89SELECT * FROM `T2a` LEFT JOIN `T2b` USING (`C1`); 90SELECT * FROM `T2a` LEFT JOIN `T2b` ON (`T2a`.`C1` = `T2b`.`C1`); 91SELECT * FROM `T2b` RIGHT JOIN `T2a` USING (`C1`); 92SELECT * FROM `T2b` RIGHT JOIN `T2a` ON (`T2a`.`C1` = `T2b`.`C1`); 93SELECT * FROM `T3a` JOIN `T3b`; 94SELECT * FROM `T3a` INNER JOIN `T3b`; 95SELECT * FROM `T3a` JOIN `T3b` USING (`C1`); 96SELECT * FROM `T3a` INNER JOIN `T3b` USING (`C1`); 97SELECT * FROM `T3a` CROSS JOIN `T3b`; 98SELECT * FROM `T3a` LEFT JOIN `T3b` USING (`C1`); 99SELECT * FROM `T3a` LEFT JOIN `T3b` ON (`T3a`.`C1` = `T3b`.`C1`); 100SELECT * FROM `T3b` RIGHT JOIN `T3a` USING (`C1`); 101SELECT * FROM `T3b` RIGHT JOIN `T3a` ON (`T3a`.`C1` = `T3b`.`C1`); 102 103#Test for myisam 104SELECT * FROM `T4a` JOIN `T4b`; 105SELECT * FROM `T4a` INNER JOIN `T4b`; 106SELECT * FROM `T4a` JOIN `T4b` USING (`C1`); 107SELECT * FROM `T4a` INNER JOIN `T4b` USING (`C1`); 108SELECT * FROM `T4a` CROSS JOIN `T4b`; 109SELECT * FROM `T4a` LEFT JOIN `T4b` USING (`C1`); 110SELECT * FROM `T4a` LEFT JOIN `T4b` ON (`T4a`.`C1` = `T4b`.`C1`); 111SELECT * FROM `T4b` RIGHT JOIN `T4a` USING (`C1`); 112SELECT * FROM `T4b` RIGHT JOIN `T4a` ON (`T4a`.`C1` = `T4b`.`C1`); 113SELECT * FROM `T5a` JOIN `T5b`; 114SELECT * FROM `T5a` INNER JOIN `T5b`; 115SELECT * FROM `T5a` JOIN `T5b` USING (`C1`); 116SELECT * FROM `T5a` INNER JOIN `T5b` USING (`C1`); 117SELECT * FROM `T5a` CROSS JOIN `T5b`; 118SELECT * FROM `T5a` LEFT JOIN `T5b` USING (`C1`); 119SELECT * FROM `T5a` LEFT JOIN `T5b` ON (`T5a`.`C1` = `T5b`.`C1`); 120SELECT * FROM `T5b` RIGHT JOIN `T5a` USING (`C1`); 121SELECT * FROM `T5b` RIGHT JOIN `T5a` ON (`T5a`.`C1` = `T5b`.`C1`); 122SELECT * FROM `T6a` JOIN `T6b`; 123SELECT * FROM `T6a` INNER JOIN `T6b`; 124SELECT * FROM `T6a` JOIN `T6b` USING (`C1`); 125SELECT * FROM `T6a` INNER JOIN `T6b` USING (`C1`); 126SELECT * FROM `T6a` CROSS JOIN `T6b`; 127SELECT * FROM `T6a` LEFT JOIN `T6b` USING (`C1`); 128SELECT * FROM `T6a` LEFT JOIN `T6b` ON (`T6a`.`C1` = `T6b`.`C1`); 129SELECT * FROM `T6b` RIGHT JOIN `T6a` USING (`C1`); 130SELECT * FROM `T6b` RIGHT JOIN `T6a` ON (`T6a`.`C1` = `T6b`.`C1`); 131 132#Test for MEMORY 133SELECT * FROM `T7a` JOIN `T7b`; 134SELECT * FROM `T7a` INNER JOIN `T7b`; 135SELECT * FROM `T7a` JOIN `T7b` USING (`C1`); 136SELECT * FROM `T7a` INNER JOIN `T7b` USING (`C1`); 137SELECT * FROM `T7a` CROSS JOIN `T7b`; 138SELECT * FROM `T7a` LEFT JOIN `T7b` USING (`C1`); 139SELECT * FROM `T7a` LEFT JOIN `T7b` ON (`T7a`.`C1` = `T7b`.`C1`); 140SELECT * FROM `T7b` RIGHT JOIN `T7a` USING (`C1`); 141SELECT * FROM `T7b` RIGHT JOIN `T7a` ON (`T7a`.`C1` = `T7b`.`C1`); 142SELECT * FROM `T8a` JOIN `T8b`; 143SELECT * FROM `T8a` INNER JOIN `T8b`; 144SELECT * FROM `T8a` JOIN `T8b` USING (`C1`); 145SELECT * FROM `T8a` INNER JOIN `T8b` USING (`C1`); 146SELECT * FROM `T8a` CROSS JOIN `T8b`; 147SELECT * FROM `T8a` LEFT JOIN `T8b` USING (`C1`); 148SELECT * FROM `T8a` LEFT JOIN `T8b` ON (`T8a`.`C1` = `T8b`.`C1`); 149SELECT * FROM `T8b` RIGHT JOIN `T8a` USING (`C1`); 150SELECT * FROM `T8b` RIGHT JOIN `T8a` ON (`T8a`.`C1` = `T8b`.`C1`); 151SELECT * FROM `T9a` JOIN `T9b`; 152SELECT * FROM `T9a` INNER JOIN `T9b`; 153SELECT * FROM `T9a` JOIN `T9b` USING (`C1`); 154SELECT * FROM `T9a` INNER JOIN `T9b` USING (`C1`); 155SELECT * FROM `T9a` CROSS JOIN `T9b`; 156SELECT * FROM `T9a` LEFT JOIN `T9b` USING (`C1`); 157SELECT * FROM `T9a` LEFT JOIN `T9b` ON (`T9a`.`C1` = `T9b`.`C1`); 158SELECT * FROM `T9b` RIGHT JOIN `T9a` USING (`C1`); 159SELECT * FROM `T9b` RIGHT JOIN `T9a` ON (`T9a`.`C1` = `T9b`.`C1`); 160 161DROP TABLE `T1a`; 162DROP TABLE `T1b`; 163DROP TABLE `T2a`; 164DROP TABLE `T2b`; 165DROP TABLE `T3a`; 166DROP TABLE `T3b`; 167DROP TABLE `T4a`; 168DROP TABLE `T4b`; 169DROP TABLE `T5a`; 170DROP TABLE `T5b`; 171DROP TABLE `T6a`; 172DROP TABLE `T6b`; 173DROP TABLE `T7a`; 174DROP TABLE `T7b`; 175DROP TABLE `T8a`; 176DROP TABLE `T8b`; 177DROP TABLE `T9a`; 178DROP TABLE `T9b`; 179