Conteo de no duplicados

25/10/2005 - 00:39 por Daniel | Informe spam
Habia planteado mal el problema, tengo una tabla similar a esta:

COL1 COL2 NOMBRE
A A PEDRO
A B MARIA
A C PEDRO
B B PEDRO
A A PEDRO
A C PEDRO
A B MARIA

y quiero hacer un conteo de no duplicados por las columnas de NOMBRE, COL1 y
COL2
este sería el resultado que quiero, como puedo hacerlo?:

NOMBRE CONTEO
PEDRO 3
MARIA 1


Cualquier ayuda les agradezco!!

Preguntas similare

Leer las respuestas

#1 Isaias
25/10/2005 - 01:01 | Informe spam
¿En una sola instruccion de SELECT?, no veo por donde, yo haria una tabla de
PASO, donde almacenaria mis registros.

1.- Eliminar los DUPLICADOS
2.- Contar los restantes, agrupando por NOMBRE.

¿Cierto?
Saludos
IIslas


"Daniel" escribió:

Habia planteado mal el problema, tengo una tabla similar a esta:

COL1 COL2 NOMBRE
A A PEDRO
A B MARIA
A C PEDRO
B B PEDRO
A A PEDRO
A C PEDRO
A B MARIA

y quiero hacer un conteo de no duplicados por las columnas de NOMBRE, COL1 y
COL2
este sería el resultado que quiero, como puedo hacerlo?:

NOMBRE CONTEO
PEDRO 3
MARIA 1


Cualquier ayuda les agradezco!!


Respuesta Responder a este mensaje
#2 Alejandro Mesa
25/10/2005 - 01:11 | Informe spam
Trata:

select
nombre,
count(distinct c1 + ' - ' + c2)
from t1 as a
group by nombre


select
nombre,
count(*)
from (select distinct nombre, c1, c2 from t1) as a
group by nombre


AMB

"Daniel" wrote:

Habia planteado mal el problema, tengo una tabla similar a esta:

COL1 COL2 NOMBRE
A A PEDRO
A B MARIA
A C PEDRO
B B PEDRO
A A PEDRO
A C PEDRO
A B MARIA

y quiero hacer un conteo de no duplicados por las columnas de NOMBRE, COL1 y
COL2
este sería el resultado que quiero, como puedo hacerlo?:

NOMBRE CONTEO
PEDRO 3
MARIA 1


Cualquier ayuda les agradezco!!


Respuesta Responder a este mensaje
#3 Isaias
25/10/2005 - 02:37 | Informe spam
Perfecto, hice la prueba y funciona

CREATE TABLE #NOMBRE (COL1 CHAR(1), COL2 CHAR(1), nombre CHAR(20))

INSERT INTO #NOMBRE VALUES('A','A','PEDRO')
INSERT INTO #NOMBRE VALUES('A','B','MARIA')
INSERT INTO #NOMBRE VALUES('A','C','PEDRO')
INSERT INTO #NOMBRE VALUES('B','B','PEDRO')
INSERT INTO #NOMBRE VALUES('A','A','PEDRO')
INSERT INTO #NOMBRE VALUES('A','C','PEDRO')
INSERT INTO #NOMBRE VALUES('A','B','MARIA')


DROP TABLE #NOMBRE


select
nombre,
count(distinct col1 + ' - ' + col2)
from #NOMBRE as a
group by nombre


select
nombre,
count(*)
from (select distinct nombre, col1, col2 from #NOMBRE) as a
group by nombre


Saludos
IIslas
Respuesta Responder a este mensaje
#4 Alejandro Mesa
25/10/2005 - 02:51 | Informe spam
Isaias,

Te agradezco que hayas hecho la prueba, pues aca en esta computer no tengo
sql server para probar los scripts.


AMB

"Isaias" wrote:

Perfecto, hice la prueba y funciona

CREATE TABLE #NOMBRE (COL1 CHAR(1), COL2 CHAR(1), nombre CHAR(20))

INSERT INTO #NOMBRE VALUES('A','A','PEDRO')
INSERT INTO #NOMBRE VALUES('A','B','MARIA')
INSERT INTO #NOMBRE VALUES('A','C','PEDRO')
INSERT INTO #NOMBRE VALUES('B','B','PEDRO')
INSERT INTO #NOMBRE VALUES('A','A','PEDRO')
INSERT INTO #NOMBRE VALUES('A','C','PEDRO')
INSERT INTO #NOMBRE VALUES('A','B','MARIA')


DROP TABLE #NOMBRE


select
nombre,
count(distinct col1 + ' - ' + col2)
from #NOMBRE as a
group by nombre


select
nombre,
count(*)
from (select distinct nombre, col1, col2 from #NOMBRE) as a
group by nombre


Saludos
IIslas


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