Hi! On Mar 20, Lorderon wrote: > I have 3 tables to join when the last one is a Full-Text table (ft_table).. > I do the next join: > > SELECT id,title FROM table1 LEFT JOIN table2 USING (id) INNER JOIN ft_table > USING (id) WHERE ... > > But MySQL selects the primary key (id) to join the ft_table, which makes the > query run a lot of time and gives wrong results according to the MATCH > AGAINST search..
Please provide a complete repeatable test case for this. > I found that making the join as this: > > SELECT id,title FROM table1,table2,ft_table WHERE table1.id=table2.id AND > table2.id=ft_table.id AND ... > > gives the wanted results according to MATCH AGAINST, but leave out rows that > don't exist in table2 (the join there was LEFT JOIN).. > > 1- Is there a way to join the full-text table and using the full-text index, > so the query will not last long? You may use USE INDEX / IGNORE INDEX in the FROM clause (see the manual) > 2- Is there a way to make something like LEFT JOIN using list of tables > seperated by comma (table1,table2,..)? no. > 3- Is there a performance difference between making INNER JOIN or by making > list of tables seperated by comma (table1,table2,..) with using WHERE > clause? no. Regards, Sergei -- __ ___ ___ ____ __ / |/ /_ __/ __/ __ \/ / Sergei Golubchik <[EMAIL PROTECTED]> / /|_/ / // /\ \/ /_/ / /__ MySQL AB, Senior Software Developer /_/ /_/\_, /___/\___\_\___/ Osnabrueck, Germany <___/ www.mysql.com -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]