Ver Mensaje Individual
  #6 (permalink)  
Antiguo 11/05/2009, 12:07
Avatar de huesos52
huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 3 meses
Puntos: 360
Respuesta: Duda con group by

Gracias thumper por tu respuesta.

Conozco muy poco de sql server pero seguramente si pruebas esto en tu ejemplo:
select intid, promedio = avg(intedad)
from @table
group by intid;

Te va a mostrar los id y el promedio.

Si quisieras incluir el nombre:
select intid, varnombre,promedio = avg(intedad)
from @table
group by intid,varnombre;

Asumo que lo unico que cambiaría de la salida, sería la inclusión del campo varnombre. Tendrías el mismo numero de registros que la consulta anterior.

Mi pregunta es:
Por que esta consulta:
select intid, varnombre,promedio = avg(intedad)
from @table
group by intid;

No funciona, si estamos agrupando por un campo que es unico??
Por que es necesario incluir varnombre como columna en la agrupación?
Si tenemos una consulta con mas de 50 campos, por que es necesario la inclusión de estas variables en el group by cuando teóricamente no es necesario?

Un saludo.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming