Ver Mensaje Individual
  #2 (permalink)  
Antiguo 29/12/2010, 19:02
ricardocondef
 
Fecha de Ingreso: diciembre-2010
Mensajes: 1
Antigüedad: 14 años
Puntos: 0
Respuesta: Duda basica HAVING

ola,

respuesta a la primera duda:

el enunciado es un poco confuso o la respuesta un poco ambigua porque al utilizar la clausula 'having sum(comm) > 0' estas haciendo que con que exista un empleado que cobre comision se tenga en cuenta a todos los demas del departamento aunque no la cobren porque la suma de todas ellas será distinta de nulo.

me permito darte una alternativa que creo te deberia dar otro resultado que creo que es el válido:

select deptno , avg(sal) from emp where comision is not null group by dept



respuesta a la segunda duda:

select avg(sal) from emp group by deptno having comm>0; te da error porque si estas haciendo un agrupamiento por departamento , no puedes preguntar por el valor de un campo atómico sino por el de unha funcion que se pueda aplicar a todos los valores de dicho campo para cada departamento.

no soy un experto pero espero haberte podido ayudar

saludos