I have a MySQL query something like this:
SELECT * FROM products LEFT JOIN descriptions ON products.DescriptionID = descriptions.ID WHERE MATCH (name, overview, specs) AGAINST ('ram');
All the columns I'm trying to execute using MATCH() AGAINST() are FULLTEXT, but when testing in phpMyAdmin I get the following error:
If I only MATCH one column, it does not work with an error and works correctly, but as soon as I try to execute MATCH several columns, this error does not occur. I am using MySQL 5.0.45, and MySQL 5.0 Full-text search functions imply that I can do this.
Is it because of the LEFT JOIN ? Do I need OR together with a bunch of function calls MATCH() AGAINST() ?
Update @Zak: I cannot post table creation instructions, but I can say that in this example the columns look like this: products.name , descriptions.overview , descriptions.specs . If I specify them in full table.column format, this will not change the behavior.
However, if I lose products.name from MATCH() , I get the following error:
But both descriptions.overview and descriptions.specs are FULLTEXT.
source share