
19/07/2009, 09:34
|
Colaborador | | Fecha de Ingreso: marzo-2008 Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 10 meses Puntos: 300 | |
Respuesta: se puede utilizar MATCH AGAINST sobre dos tablas relacionadas? The Stranger,
lo que no puedes hacer, creo, es un índice de dos campos de distintas tablas, pero tú puedes crear dos índices, uno para los campos de cada una de las tablas, y luego buscar con AND u OR, según lo que quieras.
Creas un índice fulltext de los campos campo1, campo2 de la tabla1 y campo1 de la tabla2, unidas por los campos id y refid, respectivamente, y luego puedes hacer:
SELECT t1.campo1, t1.campo2, t2.campo2 FROM tabla1 t1 INNER JOIN tabla2 t2 ON t1.id = t2.refid WHERE MATCH (t1.campo1, t1.campo2) AGAINST ('loquebusques') AND MATCH (t2.campo1) AGAINST('loquebusques')
No lo he probado. Naturalmente, quizás no es lo que quieres, pero creo que no puedes hacer índices de campos de tablas distintas. Con AND y OR puedes encontrar diversas soluciones. |