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

Hola.

La meta es no mostrar resultados repetidos en función del campo "id_coche".

Tengo estos 4 SELECT colocados en este orden exacto para que muestre los resultados del primer SELECT en primer lugar y me los ordene por velocidad, luego los del segundo y así sucesivamente:

Código MySQL:
Ver original
  1. (SELECT * FROM table WHERE coches LIKE "nuevos" ORDER BY velocidad LIMIT 100)
  2. (SELECT * FROM table WHERE coches LIKE "semi-nuevos" ORDER BY velocidad LIMIT 100)
  3. (SELECT * FROM table WHERE coches LIKE "viejos" ORDER BY velocidad LIMIT 100)
  4. (SELECT * FROM table WHERE coches LIKE "raros" ORDER BY velocidad LIMIT 100)
  5. LIMIT 100

Pero si quiero usar un "GROUP BY id_coche" al final del todo no funciona y si lo aplico en cada consulta individual me muestra resultados repetidos igualmente y no funciona.

También probé a usar Distint, ejemplo:

Código MySQL:
Ver original
  1. (SELECT DISTINT id_coche FROM table WHERE coches LIKE "nuevos" ORDER BY velocidad LIMIT 100)
  2. (SELECT DISTINT id_coche FROM table WHERE coches LIKE "semi-nuevos" ORDER BY velocidad LIMIT 100)
  3. (SELECT DISTINT id_coche FROM table WHERE coches LIKE "viejos" ORDER BY velocidad LIMIT 100)
  4. (SELECT DISTINT id_coche FROM table WHERE coches LIKE "raros" ORDER BY velocidad LIMIT 100)
  5. LIMIT 100

Pero necesito todos los campos y únicamente quiero que no se repita ese, los demás si es necesario que se repitan.

¿Alguna idea?