Ver Mensaje Individual
  #8 (permalink)  
Antiguo 29/01/2014, 07:37
juanito_29899
 
Fecha de Ingreso: noviembre-2013
Mensajes: 27
Antigüedad: 10 años, 6 meses
Puntos: 1
Respuesta: GROUP BY en varios SELECT con UNION

Cita:
Ahora deberias explicar como se entiende esto
Exacto, porque si con el primer SELECT ya obtengo los 100 registros que quiero no necesito ninguno más, ya que los primeros son los más relevantes (porque yo los quiero priorizar así), de ahí el LIMIT. Sin embargo si por ejemplo el primer SELECT sólo me da 80 resultados, al no haber llegado al límite de 100 aún quiero que me siga dando resultados con el segundo SELECT, y así con todos. En ese sentido no tengo ningún problema.

Si en realidad lo tengo "chapuceramente" arreglado con PHP, es decir, usando NOT LIKE. Pero eso implica mucho código y además quiero hacerlo con MySQL exclusivamente, si es que se puede...

Y por otro lado lo de Nuevo, seminuevo, viejo... En realidad es sólo un ejemplo pero ahí están keywords del vehículo. Ej:

"Viejo, Seminuevo, motor quemado, ruedas tamaño XL".

He puesto palabras aposta para poner un ejemplo de TEXTO reducido porque, obviamente, si sólo existiesen esos 4 tipos o un número definido, lo habría hecho con número, como la velocidad. Por lo tanto los IF me parece que no me sirven al tratarse de texto.

¿No sé le puede dar un valor numérico a cada SELECT para ponerlos todos juntos, con los UNION pero sin los paréntesis de cada SELECT y al final hacer un ORDER BY select_score, velocidad o lo que sea + el GROUP BY? Me parece que el GROUP BY en ese caso si funcionaría al no tener SELECTs individuales separados con los paréntesis.

También he comprobado que si uso un GROUP BY en un sólo SELECT que sea con MATCH AGAINST aparte, independientemente de todos estos códigos mencionados, la relevancia falla. No entiendo por que...

Última edición por juanito_29899; 29/01/2014 a las 12:07