Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Consulta con 'contar' de forma diferente en un campo de la tabla

Estas en el tema de Consulta con 'contar' de forma diferente en un campo de la tabla en el foro de Bases de Datos General en Foros del Web. Hola a tod@s. Tengo un campo de tabla llamado 'problema' en el que unos registros tienen valores superiores a '0' -cero' y otros tienen el ...
  #1 (permalink)  
Antiguo 06/02/2009, 04:07
 
Fecha de Ingreso: marzo-2007
Mensajes: 16
Antigüedad: 17 años, 1 mes
Puntos: 0
Consulta con 'contar' de forma diferente en un campo de la tabla

Hola a tod@s.

Tengo un campo de tabla llamado 'problema' en el que unos registros tienen valores superiores a '0' -cero' y otros tienen el valor '0' -cero-.
Me gustaría lograr una consulta en la que en un campo de la consulta resultante, llamémosle 'campo1' me cuente el número de registros con valor superior a '0' -cero- y en otro campo de la misma consulta resultante llamémosle 'campo2' me cuente el número de registros con valor iugal a '0' -cero-.
Os agradezco la ayuda que podaís prestarme.
Saludos.
  #2 (permalink)  
Antiguo 06/02/2009, 04:40
Avatar de Taribo007  
Fecha de Ingreso: agosto-2007
Mensajes: 1.338
Antigüedad: 16 años, 8 meses
Puntos: 18
Respuesta: Consulta con 'contar' de forma diferente en un campo de la tabla

Prueba con algo asi:

SELECT Sum(IIf([Problema]>0,1,0)) AS campo1, Sum(IIf([Problema]=0,1,0)) AS campo2
FROM NombreTabla;

Un saludo
  #3 (permalink)  
Antiguo 06/02/2009, 06:46
 
Fecha de Ingreso: marzo-2007
Mensajes: 16
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: Consulta con 'contar' de forma diferente en un campo de la tabla

Gracia Taribo007, pero lo que necesito es que cuente no que sume. No obstante he modificado tu codigo para que cuente pero no funciona. Muchas gracias, no obstante, y si puedes ayudarme te lo agradecería.
Saludos.
  #4 (permalink)  
Antiguo 06/02/2009, 06:49
Avatar de Taribo007  
Fecha de Ingreso: agosto-2007
Mensajes: 1.338
Antigüedad: 16 años, 8 meses
Puntos: 18
Respuesta: Consulta con 'contar' de forma diferente en un campo de la tabla

Pero segun lo he puesto es lo mismo. Por que si es cero en el primer caso, pone un 1, si no es cero pone un 0. Y luego, al sumar, suma 1 si cumple y 0 si no cumple, por tanto, tienes lo que necesitas. No se si me explico

un saludo
  #5 (permalink)  
Antiguo 06/02/2009, 07:01
 
Fecha de Ingreso: marzo-2007
Mensajes: 16
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: Consulta con 'contar' de forma diferente en un campo de la tabla

Taribo007, te agradezco una vez más tu interés por ayudarme.
El código que he utilizado es el siguiente:

"SELECT Count(IIf([elec_consumo2006]>0,1,0)) AS campo1, Count(IIf([elec_consumo2006]=0,1,0)) AS campo2
FROM basegeneral;"

Desgraciadamente me cuenta en los dos campos de la consulta la totalidad de los registros existentes en el campo de la tabla.

No sé como solucionarlo o, en su caso, que estoy haciendo mal.

Gracias y saludos.
  #6 (permalink)  
Antiguo 06/02/2009, 07:23
Avatar de Taribo007  
Fecha de Ingreso: agosto-2007
Mensajes: 1.338
Antigüedad: 16 años, 8 meses
Puntos: 18
Respuesta: Consulta con 'contar' de forma diferente en un campo de la tabla

Lo puedes solucionar como yo te lo puse. Es exactamente lo que necesitas. Tu pruebala y veras que te sale lo que pretendes

un saludo
  #7 (permalink)  
Antiguo 07/02/2009, 01:47
 
Fecha de Ingreso: marzo-2007
Mensajes: 16
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: Consulta con 'contar' de forma diferente en un campo de la tabla

Taribo007, efectivamente tú tenías razón. La solución a mi pregunta era tal y como tú me dijiste.
Como habrás podido comprobar no tengo grandes conocimientos en Acces y además cometí un error de entrada cuando ví el código que me mandaste, pues al comprobar que tenía el término 'Sum' consideré que el código que se me mandó no estaba trabajado, pero no era así, y por eso lo cambié por el de 'count', sin probarlo tan siquiera. Reconozco mi error, pero no lo hice con la mala fé. Tú tenías razón.
Muchísimas gracias por tú ayuda, lo que permitirá resolver un trabajito este fin de semana.
Un cordial saludo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:29.