Como contar todos los registros y contar grupos en un solo registro

02/12/2004 - 22:16 por Enrique Alvarado | Informe spam
Hola a todos...

Quiero contar todos los registros de la tabla en un campo pero aparte como
la tabla esta agrupada por otro campo quiero que en otro campo me muestre el
total de registros de ese grupo

Si alguien Puede ayudarme se lo agradecer bastante

Gracias

Enrique Ceseña

Preguntas similare

Leer las respuestas

#1 Maxi
03/12/2004 - 13:21 | Informe spam
Hola, podrias usar algo asi como

select count(*) as cuenta1, campo, (select count(*) from tabla) as total
FROM TABLA
group by campo

pd: si no son muchos registros no hay drama, ahora si la bdd es muy pero muy
grande, se puede llegar a poner muy lento esto :(


Salu2
Maxi


"Enrique Alvarado" escribió en el mensaje
news:
Hola a todos...

Quiero contar todos los registros de la tabla en un campo pero aparte como
la tabla esta agrupada por otro campo quiero que en otro campo me muestre
el
total de registros de ese grupo

Si alguien Puede ayudarme se lo agradecer bastante

Gracias

Enrique Ceseña


Respuesta Responder a este mensaje
#2 Javier Loria
03/12/2004 - 17:17 | Informe spam
Hola Maxi:
Con respecto a la nota de desempeno, podria parecer que el SQL hace
tantas veces el
<<SELECT COUNT(*) FROM TABLA>> como filas hay. Pero el optimizador es
demasiado intelligente para esto, y sabe que es un valor fijo y lo hace una
sola vez.
Si tienes la Base de Datos de prueba de AdventureWorks2000, puedes
probar las siguientes consultas
SELECT ProductID
, COUNT(*) AS Cantidad
, (SELECT COUNT(*) FROM SalesOrderDetail) AS Total
FROM SalesOrderDetail
GROUP BY ProductID

DECLARE @Total INTEGER
SELECT @Total=COUNT(*) FROM SalesOrderDetail
select ProductID
, COUNT(*) AS Cantidad
, @Total as Total
FROM SalesOrderDetail
GROUP BY ProductID
Veras que tardan exactamento lo mismo, y no hay ganancia en desmempeno
de aplanar la consulta.
Saludos y que pase buen fin de semana.


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda

"Maxi" wrote in message
news:
Hola, podrias usar algo asi como

select count(*) as cuenta1, campo, (select count(*) from tabla) as total
FROM TABLA
group by campo

pd: si no son muchos registros no hay drama, ahora si la bdd es muy pero


muy
grande, se puede llegar a poner muy lento esto :(


Salu2
Maxi


"Enrique Alvarado" escribió en el mensaje
news:
> Hola a todos...
>
> Quiero contar todos los registros de la tabla en un campo pero aparte


como
> la tabla esta agrupada por otro campo quiero que en otro campo me


muestre
> el
> total de registros de ese grupo
>
> Si alguien Puede ayudarme se lo agradecer bastante
>
> Gracias
>
> Enrique Ceseña
>
>


Respuesta Responder a este mensaje
#3 Maxi
03/12/2004 - 17:23 | Informe spam
Hola Javier, tienes toda la razon, no lo habia probado eso :(. Que
inteligente que es la pucha :)


Salu2
Maxi


"Javier Loria" escribió en el mensaje
news:
Hola Maxi:
Con respecto a la nota de desempeno, podria parecer que el SQL hace
tantas veces el
<<SELECT COUNT(*) FROM TABLA>> como filas hay. Pero el optimizador es
demasiado intelligente para esto, y sabe que es un valor fijo y lo hace
una
sola vez.
Si tienes la Base de Datos de prueba de AdventureWorks2000, puedes
probar las siguientes consultas
SELECT ProductID
, COUNT(*) AS Cantidad
, (SELECT COUNT(*) FROM SalesOrderDetail) AS Total
FROM SalesOrderDetail
GROUP BY ProductID

DECLARE @Total INTEGER
SELECT @Total=COUNT(*) FROM SalesOrderDetail
select ProductID
, COUNT(*) AS Cantidad
, @Total as Total
FROM SalesOrderDetail
GROUP BY ProductID
> Veras que tardan exactamento lo mismo, y no hay ganancia en desmempeno
de aplanar la consulta.
Saludos y que pase buen fin de semana.


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda

"Maxi" wrote in message
news:
Hola, podrias usar algo asi como

select count(*) as cuenta1, campo, (select count(*) from tabla) as total
FROM TABLA
group by campo

pd: si no son muchos registros no hay drama, ahora si la bdd es muy pero


muy
grande, se puede llegar a poner muy lento esto :(


Salu2
Maxi


"Enrique Alvarado" escribió en el mensaje
news:
> Hola a todos...
>
> Quiero contar todos los registros de la tabla en un campo pero aparte


como
> la tabla esta agrupada por otro campo quiero que en otro campo me


muestre
> el
> total de registros de ese grupo
>
> Si alguien Puede ayudarme se lo agradecer bastante
>
> Gracias
>
> Enrique Ceseña
>
>






Respuesta Responder a este mensaje
#4 Antonio Ortiz
03/12/2004 - 19:26 | Informe spam
Interesante observacion. Creo que me sera muy util

gracias,

Antonio Ortiz
asesor en sistemas
ant(a)aortiz.net
www.aortiz.net
www.progvisual.com


"Javier Loria" escribió en el mensaje
news:
Hola Maxi:
Con respecto a la nota de desempeno, podria parecer que el SQL hace
tantas veces el
<<SELECT COUNT(*) FROM TABLA>> como filas hay. Pero el optimizador es
demasiado intelligente para esto, y sabe que es un valor fijo y lo hace


una
sola vez.
Si tienes la Base de Datos de prueba de AdventureWorks2000, puedes
probar las siguientes consultas
SELECT ProductID
, COUNT(*) AS Cantidad
, (SELECT COUNT(*) FROM SalesOrderDetail) AS Total
FROM SalesOrderDetail
GROUP BY ProductID

DECLARE @Total INTEGER
SELECT @Total=COUNT(*) FROM SalesOrderDetail
select ProductID
, COUNT(*) AS Cantidad
, @Total as Total
FROM SalesOrderDetail
GROUP BY ProductID
> Veras que tardan exactamento lo mismo, y no hay ganancia en desmempeno
de aplanar la consulta.
Saludos y que pase buen fin de semana.


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda

"Maxi" wrote in message
news:
> Hola, podrias usar algo asi como
>
> select count(*) as cuenta1, campo, (select count(*) from tabla) as total
> FROM TABLA
> group by campo
>
> pd: si no son muchos registros no hay drama, ahora si la bdd es muy pero
muy
> grande, se puede llegar a poner muy lento esto :(
>
>
> Salu2
> Maxi
>
>
> "Enrique Alvarado" escribió en el mensaje
> news:
> > Hola a todos...
> >
> > Quiero contar todos los registros de la tabla en un campo pero aparte
como
> > la tabla esta agrupada por otro campo quiero que en otro campo me
muestre
> > el
> > total de registros de ese grupo
> >
> > Si alguien Puede ayudarme se lo agradecer bastante
> >
> > Gracias
> >
> > Enrique Ceseña
> >
> >
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida