CREATE TABLE `test` ( `txt` char(1) character set utf8 collate utf8_bin NOT NULL default '', PRIMARY KEY (`txt`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; SET CHARACTER SET latin2; INSERT INTO `test` VALUES ( 'a' ); INSERT INTO `test` VALUES ( '±' ); INSERT INTO `test` VALUES ( 'l' ); INSERT INTO `test` VALUES ( '³' ); INSERT INTO `test` VALUES ( 'n' ); INSERT INTO `test` VALUES ( 'ñ' ); SELECT 'The query should return two rows: "a" and "±"' AS info; SELECT txt FROM test WHERE txt = CONVERT( _latin2'a' USING utf8 ) COLLATE utf8_general_ci; SELECT 'The query should return two rows: "a" and "±"' AS info; SELECT txt FROM test WHERE txt = CONVERT( _latin2'±' USING utf8 ) COLLATE utf8_general_ci; SELECT 'The query should return two rows: "n" and "ñ"' AS info; SELECT txt FROM test WHERE txt = CONVERT( _latin2'n' USING utf8 ) COLLATE utf8_general_ci; SELECT 'The query should return two rows: "n" and "ñ"' AS info; SELECT txt FROM test WHERE txt = CONVERT( _latin2'ñ' USING utf8 ) COLLATE utf8_general_ci; SELECT 'The query should return two rows: "l" and "³"' AS info; SELECT txt FROM test WHERE txt = CONVERT( _latin2'l' USING utf8 ) COLLATE utf8_general_ci; SELECT 'The query should return two rows: "³" and "³"' AS info; SELECT txt FROM test WHERE txt = CONVERT( _latin2'³' USING utf8 ) COLLATE utf8_general_ci; DROP TABLE `test`;