Ver Mensaje Individual
  #18 (permalink)  
Antiguo 18/07/2019, 13:48
pithon
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 12 años, 11 meses
Puntos: 10
Respuesta: mostrar ultimos registros teniendo en cuenta dos campos en común

Al final conseguí que funcione la consulta pero es un poco lenta.
Código MySQL:
Ver original
  1.  
  2.     pais,ciudad
  3.     (
  4.         CASE CONCAT(pais COLLATE utf8_unicode_ci,ciudad COLLATE utf8_unicode_ci)
  5.         WHEN @curInput THEN
  6.             @curRow := @curRow + 1
  7.         ELSE
  8.             @curRow := 1
  9.         AND @curInput := CONCAT(pais,ciudad)
  10.         END
  11.     ) AS row,
  12.     fecha AS f
  13.     clientes c,
  14.     (
  15.         SELECT
  16.             @curRow := 0,
  17.             @curInput := ''
  18.     ) rp
  19.     pais,ciudad
  20. ) AS t1
  21.  
  22.  
  23. (SELECT COUNT(*) AS total,pais,ciudad FROM clientes WHERE estado=1 GROUP BY pais,ciudad HAVING COUNT(*)>=100) AS t2
  24.  
  25. ON t1.pais=t2.pais AND t1.ciudad=t2.ciudad AND row>50 ORDER BY f  LIMIT 50

¿Es posible hacerlo de una manera mas eficiente, logrando el mismo resultado?

Gracias y saludos.

Última edición por pithon; 18/07/2019 a las 14:37