Contar en una TABLA Si y No

28/08/2008 - 04:40 por Don Quijote de Nicaragua | Informe spam
Hola a todos muchas gracias por su tiempo, tengo una tabla con la
siguiente estructura y datos (los cuales pueden ir incrementandose
segun el uso):

Descripcion Tipo
Desp1 Si
Desp2 Si
Desp1 Si
Desp2 No

Y el resultado que deseo obtener es el siguiente:

Descripcion CantidadSi CantidadNo
Desp1 2 0
Desp2 1 1

Si alguien tiene algun comentario al respecto se los agradeceria.
Saludos Cordiales.
Don Quijote de Nicaragua.
Elder Soto.

Preguntas similare

Leer las respuestas

#1 Sergio E.
28/08/2008 - 06:14 | Informe spam
Hola, Creo que te funcionaria un

select distinct t.descripcion, t.cantidadsi, t.cantidadno from (select
descripcion, count(tipo) as cantidadsi, 0 as cantidadno from tabla where
tipo='si' union select descripcion, count(tipo) as cantidadno, 0 as
cantidadsi from tabla where tipo='no' ) as t group by descripcion order by
description

Es algo desaconsejado el uso del union, pero a estas horas (11pm en Mx) no
se me ocurre mas nada ...


Saludos,
Sergio E.


"Don Quijote de Nicaragua" escribió en el mensaje
news:
Hola a todos muchas gracias por su tiempo, tengo una tabla con la
siguiente estructura y datos (los cuales pueden ir incrementandose
segun el uso):

Descripcion Tipo
Desp1 Si
Desp2 Si
Desp1 Si
Desp2 No

Y el resultado que deseo obtener es el siguiente:

Descripcion CantidadSi CantidadNo
Desp1 2 0
Desp2 1 1

Si alguien tiene algun comentario al respecto se los agradeceria.
Saludos Cordiales.
Don Quijote de Nicaragua.
Elder Soto.
Respuesta Responder a este mensaje
#2 Don Quijote de Nicaragua
28/08/2008 - 08:03 | Informe spam
Muchas gracias por tu respuesta, me envia un mensaje de error:

"Server: Msg 107, Level 16, State 3, Line 1
The column prefix 'CatQuejas' does not match with a table name or
alias name used in the query."

Este es el codigo siguiendo un poco la logica que me has dicho:

SELECT distinct CatQuejas.Descripcion, T.CantidadSi, T.CantidadNo
FROM
(SELECT CatQuejas.Descripcion,COUNT(Qrc.CodQrc) as CantidadSi,0 as
CantidadNo
FROM CatQuejas INNER JOIN Qrc ON CatQuejas.CodigoQueja Qrc.CodigoQueja WHERE Qrc.CerradoBet = 'Si' UNION
SELECT CatQuejas.Descripcion,COUNT(Qrc.CodQrc) as CantidadSi,0 as
CantidadNo
FROM CatQuejas INNER JOIN Qrc ON CatQuejas.CodigoQueja Qrc.CodigoQueja WHERE Qrc.CerradoBet = 'No') as T
GROUP BY Descripcion

Si alguien tiene algun comentario al respecto se lo agradeceria mucho.
Saludos Cordiales.
Don Quijote de Nicaragua.
Elder Soto.


On 27 ago, 22:14, "Sergio E." <gruporemp[ARROBA]hotmail.com> wrote:
Hola, Creo que te funcionaria un

select distinct t.descripcion, t.cantidadsi, t.cantidadno from (select
descripcion, count(tipo) as cantidadsi, 0 as cantidadno from tabla where
tipo='si' union select descripcion, count(tipo) as cantidadno, 0 as
cantidadsi from tabla where tipo='no' ) as t group by descripcion order by
description

Es algo desaconsejado el uso del union, pero a estas horas (11pm en Mx) no
se me ocurre mas nada ...

Saludos,
Sergio E.

"Don Quijote de Nicaragua" escribió en el mensajenews:

> Hola a todos muchas gracias por su tiempo, tengo una tabla con la
> siguiente estructura y datos (los cuales pueden ir incrementandose
> segun el uso):

> Descripcion        Tipo
> Desp1                Si
> Desp2                Si
> Desp1                Si
> Desp2                No

> Y el resultado que deseo obtener es el siguiente:

> Descripcion     CantidadSi            CantidadNo
> Desp1                  2                          0
> Desp2                  1                          1

> Si alguien tiene algun comentario al respecto se los agradeceria.
> Saludos Cordiales.
> Don Quijote de Nicaragua.
> Elder Soto.
Respuesta Responder a este mensaje
#3 Don Quijote de Nicaragua
28/08/2008 - 08:28 | Informe spam
Muchas gracias por tu respuesta, he podido encontrar esta otra
alternativa y ha funcionado correctamente, aprecio mucho que hayas
tomado tu tiempo para querer ayudar a otros, muchas gracias.

select CatQuejas.Descripcion,
sum(case Qrc.CerradoBet when 'Si' then 1 else 0 end) as CantidadSi,
sum(case Qrc.CerradoBet when 'No' then 1 else 0 end) as CantidadNo
FROM CatQuejas INNER JOIN Qrc ON CatQuejas.CodigoQueja Qrc.CodigoQueja
group by CatQuejas.Descripcion

Don Quijote de Nicaragua.
Elder Soto.


On 28 ago, 00:03, Don Quijote de Nicaragua
wrote:
Muchas gracias por tu respuesta, me envia un mensaje de error:

"Server: Msg 107, Level 16, State 3, Line 1
The column prefix 'CatQuejas' does not match with a table name or
alias name used in the query."

Este es el codigo siguiendo un poco la logica que me has dicho:

SELECT distinct CatQuejas.Descripcion, T.CantidadSi, T.CantidadNo
FROM
(SELECT CatQuejas.Descripcion,COUNT(Qrc.CodQrc) as CantidadSi,0 as
CantidadNo
FROM CatQuejas  INNER JOIN Qrc ON CatQuejas.CodigoQueja > Qrc.CodigoQueja WHERE Qrc.CerradoBet = 'Si' UNION
SELECT CatQuejas.Descripcion,COUNT(Qrc.CodQrc) as CantidadSi,0 as
CantidadNo
FROM CatQuejas  INNER JOIN Qrc ON CatQuejas.CodigoQueja > Qrc.CodigoQueja WHERE Qrc.CerradoBet = 'No') as T
GROUP BY Descripcion

Si alguien tiene algun comentario al respecto se lo agradeceria mucho.
Saludos Cordiales.
Don Quijote de Nicaragua.
Elder Soto.

On 27 ago, 22:14, "Sergio E." <gruporemp[ARROBA]hotmail.com> wrote:

> Hola, Creo que te funcionaria un

> select distinct t.descripcion, t.cantidadsi, t.cantidadno from (select
> descripcion, count(tipo) as cantidadsi, 0 as cantidadno from tabla where
> tipo='si' union select descripcion, count(tipo) as cantidadno, 0 as
> cantidadsi from tabla where tipo='no' ) as t group by descripcion order by
> description

> Es algo desaconsejado el uso del union, pero a estas horas (11pm en Mx) no
> se me ocurre mas nada ...

> Saludos,
> Sergio E.

> "Don Quijote de Nicaragua" escribió en el mensajenews:

> > Hola a todos muchas gracias por su tiempo, tengo una tabla con la
> > siguiente estructura y datos (los cuales pueden ir incrementandose
> > segun el uso):

> > Descripcion        Tipo
> > Desp1                Si
> > Desp2                Si
> > Desp1                Si
> > Desp2                No

> > Y el resultado que deseo obtener es el siguiente:

> > Descripcion     CantidadSi            CantidadNo
> > Desp1                  2                          0
> > Desp2                  1                          1

> > Si alguien tiene algun comentario al respecto se los agradeceria.
> > Saludos Cordiales.
> > Don Quijote de Nicaragua.
> > Elder Soto.
Respuesta Responder a este mensaje
#4 Maxi Accotto
29/08/2008 - 02:17 | Informe spam
Hola, lo que usted quiere hacer es un pivot, si usa SQL 2005 revise la
sentencia Pivot


Saludos
Maxi Accotto
Microsoft MVP en SQLServer
SQltotalconsulting
-

"Don Quijote de Nicaragua" escribió en el mensaje de
noticias:
Hola a todos muchas gracias por su tiempo, tengo una tabla con la
siguiente estructura y datos (los cuales pueden ir incrementandose
segun el uso):

Descripcion Tipo
Desp1 Si
Desp2 Si
Desp1 Si
Desp2 No

Y el resultado que deseo obtener es el siguiente:

Descripcion CantidadSi CantidadNo
Desp1 2 0
Desp2 1 1

Si alguien tiene algun comentario al respecto se los agradeceria.
Saludos Cordiales.
Don Quijote de Nicaragua.
Elder Soto.
Respuesta Responder a este mensaje
#5 Sergio E.
29/08/2008 - 03:25 | Informe spam
tienes razon, es mejor opcion, que bueno que la encontraste...


Saludos,
Sergio E.

"Don Quijote de Nicaragua" escribió en el mensaje
news:
Muchas gracias por tu respuesta, he podido encontrar esta otra
alternativa y ha funcionado correctamente, aprecio mucho que hayas
tomado tu tiempo para querer ayudar a otros, muchas gracias.

select CatQuejas.Descripcion,
sum(case Qrc.CerradoBet when 'Si' then 1 else 0 end) as CantidadSi,
sum(case Qrc.CerradoBet when 'No' then 1 else 0 end) as CantidadNo
FROM CatQuejas INNER JOIN Qrc ON CatQuejas.CodigoQueja Qrc.CodigoQueja
group by CatQuejas.Descripcion

Don Quijote de Nicaragua.
Elder Soto.


On 28 ago, 00:03, Don Quijote de Nicaragua
wrote:
Muchas gracias por tu respuesta, me envia un mensaje de error:

"Server: Msg 107, Level 16, State 3, Line 1
The column prefix 'CatQuejas' does not match with a table name or
alias name used in the query."

Este es el codigo siguiendo un poco la logica que me has dicho:

SELECT distinct CatQuejas.Descripcion, T.CantidadSi, T.CantidadNo
FROM
(SELECT CatQuejas.Descripcion,COUNT(Qrc.CodQrc) as CantidadSi,0 as
CantidadNo
FROM CatQuejas INNER JOIN Qrc ON CatQuejas.CodigoQueja > Qrc.CodigoQueja WHERE Qrc.CerradoBet = 'Si' UNION
SELECT CatQuejas.Descripcion,COUNT(Qrc.CodQrc) as CantidadSi,0 as
CantidadNo
FROM CatQuejas INNER JOIN Qrc ON CatQuejas.CodigoQueja > Qrc.CodigoQueja WHERE Qrc.CerradoBet = 'No') as T
GROUP BY Descripcion

Si alguien tiene algun comentario al respecto se lo agradeceria mucho.
Saludos Cordiales.
Don Quijote de Nicaragua.
Elder Soto.

On 27 ago, 22:14, "Sergio E." <gruporemp[ARROBA]hotmail.com> wrote:

> Hola, Creo que te funcionaria un

> select distinct t.descripcion, t.cantidadsi, t.cantidadno from (select
> descripcion, count(tipo) as cantidadsi, 0 as cantidadno from tabla where
> tipo='si' union select descripcion, count(tipo) as cantidadno, 0 as
> cantidadsi from tabla where tipo='no' ) as t group by descripcion order
> by
> description

> Es algo desaconsejado el uso del union, pero a estas horas (11pm en Mx)
> no
> se me ocurre mas nada ...

> Saludos,
> Sergio E.

> "Don Quijote de Nicaragua" escribió en el
> mensajenews:

> > Hola a todos muchas gracias por su tiempo, tengo una tabla con la
> > siguiente estructura y datos (los cuales pueden ir incrementandose
> > segun el uso):

> > Descripcion Tipo
> > Desp1 Si
> > Desp2 Si
> > Desp1 Si
> > Desp2 No

> > Y el resultado que deseo obtener es el siguiente:

> > Descripcion CantidadSi CantidadNo
> > Desp1 2 0
> > Desp2 1 1

> > Si alguien tiene algun comentario al respecto se los agradeceria.
> > Saludos Cordiales.
> > Don Quijote de Nicaragua.
> > Elder Soto.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida