ASP - Mensaje para guy o para el que sepa

 
Vista:

Mensaje para guy o para el que sepa

Publicado por cachupin (14 intervenciones) el 18/09/2001 20:10:29
Hola

GUY me diste esta solucion
<% sql="SELECT camporepetido FROM Tabla " &_
"WHERE true" &_
"GROUP BY camporepetido " &_
"HAVING COUNT(camporepetido)>1" %>
para mostrar los datos repetidos de un campo
ok funciona super
pero quise mostrar todos los campos y me dijo no no no
snifffffffff
por la agrupación
tu que eres un genio como lo harias???

graciass
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Mensaje para guy o para el que sepa

Publicado por Guy (203 intervenciones) el 19/09/2001 13:47:05
En SQL, cuando se agrupa y se quiere mostrar campos hay que tener en cuenta lo siguiente: si lo que se quiere seleccionar (mostrar) es un agregado (como COUNT, SUM, AVG, etc.), no es necesario ponerlo en la clausula GROUP BY. Si en cambio, lo que se quiere seleccionar son campos de tablas, entonces todos estos deben estar en la clausula GROUP BY.

Ejemplo con la consulta anterior:

<% sql="SELECT camporepetido, COUNT(camporepetido) as Cant, campo_1, campo_2,...,campo_n FROM Tabla " &_
"WHERE true" &_
"GROUP BY camporepetido, campo_1, campo_2,...,campo_n " &_
"HAVING COUNT(camporepetido)>1" %>

Espero que se haya entendido.
Saludos...
Guy.-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Mensaje para guy o para el que sepa

Publicado por cachupin (14 intervenciones) el 19/09/2001 23:57:34
Hola GUY
me haz dado una luz de como debo de hacerlo almenos e conocidos cosas nuevas en sql :o)

te cuento la consulta que me daz tu:
<% sql="SELECT camporepetido, COUNT(camporepetido) as Cant, campo_1, campo_2,...,campo_n FROM Tabla " &_
"WHERE true" &_
"GROUP BY camporepetido, campo_1, campo_2,...,campo_n " &_
"HAVING COUNT(camporepetido)>1" %>
me arrojaria resultados solo si todos los campos se repitieran snifff
y el cant el numero de coincidencias

select camporepetido
from tabla
where true
group by camporepetido
having count(apellido)>1
me entrega los apellidos que se repiten

select count(apellido) as cant
from tabla1
where true
group by apellido
having count(apellido)>1
me entrega la cantidad que se repite cada apellido si es que se repiten :o)

select apellido,count(apellido) as cant
from tabla1
where true
group by apellido
having count(apellido)>1
me devuelve en un campo los apellidos y en otro la cantidad que se repite el apellido .
pero el problema es que si pongo ejemplo :
select nombre,apellido,count(apellido) as cant
from tabla1
where true
group by nombre,apellido
having count(apellido)>1

solo me mostraria resultado si se repite nombre y apellido, y en count la cantidad de veces que se repite ese apellido .
snifffffff
y lo necesito es mostrar todo los campos de los registros que se repitan el apellido solamente .

snifffffffffffffff
gracias
si te le ocurre escribe please.
me haz ayudado bastante :o)


Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Mensaje para guy o para el que sepa

Publicado por Guy (203 intervenciones) el 21/09/2001 15:59:02
No lo probe, pero creo que esto funcionaria:

select * distinct
from tabla1
where apellido IN (
select apellido
from tabla1
where true
group by apellido
having count(apellido)>1 )
order by apellido, nombre

Saludos...
Guy.-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

GRACIASSSSSSSSSSSSS

Publicado por cachupin (14 intervenciones) el 21/09/2001 17:53:08
gracias GUY

funciono super bien
pero sin el distinct
:o)
me imaginaba que era con subconsultas, pero ni idea como jajaj
chaop y muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar