Ver Mensaje Individual
  #7 (permalink)  
Antiguo 12/06/2015, 08:01
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: Consulta con cuenta > 1 y con condiciión

Hola pilatos.

La consulta que planteas, es bastante simple, lo único que tienes que hacer es utilizar la cláusula HAVING en conjunto con el COUNT para filtrar lo que quieres.

Código MySQL:
Ver original
  1. mysql> SELECT *
  2.     -> FROM tabla;
  3. +---------+--------+---------+-----------+---------+
  4. | codpais | coddis | codprov | localidad | importe |
  5. +---------+--------+---------+-----------+---------+
  6. |      34 |      7 |      24 | loc_a1    |      11 |
  7. |      34 |      7 |      24 | loc_a2    |      12 |
  8. |      34 |     12 |      15 | loc_b1    |      21 |
  9. |      34 |     12 |      15 | loc_b2    |      22 |
  10. |      34 |     10 |       3 | loc_c1    |      31 |
  11. |      34 |      3 |      33 | loc_d1    |      41 |
  12. |      34 |      3 |      33 | loc_d2    |      42 |
  13. |      34 |      3 |      33 | loc_d3    |      43 |
  14. |      34 |      1 |      29 | loc_e1    |      51 |
  15. |       1 |     99 |      99 | loc_f1    |      61 |
  16. |       1 |     52 |      52 | loc_g2    |      71 |
  17. +---------+--------+---------+-----------+---------+
  18. 11 rows in set (0.00 sec)
  19.  
  20. mysql> SELECT codprov, COUNT(codprov) total
  21.     -> FROM tabla
  22.     -> WHERE codprov != 15
  23.     -> GROUP BY codprov
  24.     -> HAVING COUNT(codprov) > 1;}
  25. +---------+-------+
  26. | codprov | total |
  27. +---------+-------+
  28. |      24 |     2 |
  29. |      33 |     3 |
  30. +---------+-------+
  31. 2 rows in set (0.00 sec)

Si necesitas información adicional de tu tabla para estos codprov, puedes meter esto como una subconsulta para hacer un IN o mejor aun, hacer un INNER JOIN.

Saludos
Leo.