Ver Mensaje Individual
  #3 (permalink)  
Antiguo 04/12/2013, 11:32
juanito_29899
 
Fecha de Ingreso: noviembre-2013
Mensajes: 27
Antigüedad: 10 años, 6 meses
Puntos: 1
Respuesta: Falla MATCH AGAINST con UNION

Cita:
Iniciado por gnzsoloyo Ver Mensaje
¿Y para qué pones AS? Pon simplemente el alias.
Código SQL:
Ver original
  1. (SELECT *
  2. FROM libros
  3. WHERE keywords LIKE '%$busqueda%'
  4. ORDER BY precio DESC, fecha ASC)
  5. UNION
  6. (SELECT *, (MATCH (keywords) AGAINST('$busqueda')) relevancia
  7. FROM libros
  8. WHERE MATCH(keywords) AGAINST('$busqueda')
  9. ORDER BY relevancia DESC, ventas ASC, volumen DESC)
Eso, siempre que recuerdes que si o sí ambas consultas deben devolver la misma cantidad de campos, o de lo contrario generará un error de ejecución...

La segunda consulta crea una columna virtual llamada relevancia en la que se muestra la cifra de relevancia que la primera no tiene ¿Puede ser ese el fallo?

Por otro lado quiero aclarar que el primer SELECT en el UNION está puesto en primer lugar con la intención de que esos resultados salgan primero.