Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/02/2010, 07:32
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Varios contadores en un solo select

Esta es una forma simple, pero efectiva:
Código MySQL:
Ver original
  1.     SUM(IF(A=1,1,0)) valor1,
  2.     SUM(IF(B<>'',1,0)) valor2,
  3.     SUM(IF(A=0 AND B<>'', 1, 0) valor3
  4. FROM tabla;
La otra opción sería combinar las tres consultas en un único JOIN, pero puede traer algunas complicaciones, si además de esos campos contados hay que traer otros. Algo así:
Código MySQL:
Ver original
  1.     COUNT(T1.A) valor1,
  2.     COUNT(T2.B) valor2,
  3.     COUNT(T3.A) valor3
  4. FROM tabla T1 JOIN tabla T2, JOIN tabla T3
  5. WHERE T1.A=1 OR T2.B<>'' OR (T1.A=1 AND T2.B<>'');
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)