Ver Mensaje Individual
  #3 (permalink)  
Antiguo 10/01/2013, 07:14
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: tomar lso 10 registros de mayor numero de acuerdo al codigo

Si sabes el número de valores lo conoces, puedes unir mediante dos UNION ALL las tres consultas con su filtro y ordendas, con su LIMIT, y con subconsulta las reúnes. Espero que tu versión de MySQL te lo permita.

Pero las uniones entre tablas hazlas con INNER JOIN

Sé que hay otras opciones. Te pongo una sintaxis incompleta para que hagas pruebas tú.

Código MySQL:
Ver original
  1. SELECT t1. campo1, t1.caomp2, t1 contar FROM ((SELECT campo1, campo2, contar FROM tabla1 INNER JOIN tabla2 ON tabla1.codigoactividad = tabla2.cod. INNER JOIN....
  2. WHERE codigoactividadcita = '03' ORDER BY contar DESC LIMIT 10)
  3. (SELECT campo1, campo2, contar FROM tabla1 INNER JOIN tabla2 ON tabla1.codigoactividad = tabla2.cod. INNER JOIN....
  4. WHERE codigoactividadcita = '08' ORDER BY contar DESC LIMIT 10)
  5. (SELECT campo1, campo2, contar FROM tabla1 INNER JOIN tabla2 ON tabla1.codigoactividad = tabla2.cod. INNER JOIN....
  6. WHERE codigoactividadcita = '12' ORDER BY contar DESC LIMIT 10))T1

Última edición por jurena; 11/01/2013 a las 12:59