I am using a MATCH condition to match against a int field and a varchar field. According to http://bugs.mysql.com/bug.php?id=22343 when mixing binary and non-binary column types the match becomes binary and thus case sensitive.
My question is how would I go about making the search non-case-sensitive? I have tried using MATCH (lower(a),b) AGAINST ('title') but this does not work.
Here is a schema that can be used as a test.
CREATE TABLE IF NOT EXISTS `foo` (
`a` int(11) NOT NULL,
`b` varchar(50) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
INSERT INTO `foo` (`a`, `b`) VALUES
(2345345, 'title and volume'),
(145344, 'Volume'),
(1234214, 'Title');
SELECT * FROM `foo` WHERE MATCH (a,b) AGAINST ('title' IN BOOLEAN MODE)