Ver Mensaje Individual
  #3 (permalink)  
Antiguo 17/02/2011, 09:10
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 18 años, 2 meses
Puntos: 447
Respuesta: Consulta Mysql

Hola J0rg3M4r10:

Según lo que entendí la respuesta que te da el compañero quimfv no te sirve, ya que la salida de la consulta es muy diferente a lo que pides. Prueba con esto:

Código:
#Utilizando IF
select 
idzona, 
sum(if(resultado = 1, 1, 0)) as Resultado1,
sum(if(resultado = 0, 1, 0)) as Resultado0
from TuTabla group by idzona;

#Utilizando CASE-WHEN
select 
idzona, 
sum(case when resultado = 1 then 1 else 0 end) as Resultado1,
sum(case when resultado = 0 then 1 else 0 end) as Resultado0
from TuTabla group by idzona;


Código MySQL:
Ver original
  1. mysql> create table TuTabla (idzona int, resultado int);
  2. Query OK, 0 rows affected (0.06 sec)
  3.  
  4. mysql> insert into TuTabla values (2, 1), (3, 0), (2, 0), (4, 1);
  5. Query OK, 4 rows affected (0.03 sec)
  6. Records: 4  Duplicates: 0  Warnings: 0
  7.  
  8. mysql> select * from TuTabla;
  9. +--------+-----------+
  10. | idzona | resultado |
  11. +--------+-----------+
  12. |      2 |         1 |
  13. |      3 |         0 |
  14. |      2 |         0 |
  15. |      4 |         1 |
  16. +--------+-----------+
  17. 4 rows in set (0.00 sec)
  18.  
  19. mysql> select
  20.     -> idzona,
  21.     -> sum(if(resultado = 1, 1, 0)) as Resultado1,
  22.     -> sum(if(resultado = 0, 1, 0)) as Resultado0
  23.     -> from TuTabla group by idzona;
  24. +--------+------------+------------+
  25. | idzona | Resultado1 | Resultado0 |
  26. +--------+------------+------------+
  27. |      2 |          1 |          1 |
  28. |      3 |          0 |          1 |
  29. |      4 |          1 |          0 |
  30. +--------+------------+------------+
  31. 3 rows in set (0.00 sec)
  32.  
  33. mysql>

La salida es exactamente igual a lo que pides.

Saludos
Leo.