FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Es decir, en este tipo de consultas está correcto que salga ese tipo de advertencias?. He intentado cambiar la consulta para que no me de esa advertencia pero el resultado ha cambiado completamente y no es el resultado esperado. He cambiado por esta sentencia sql:
select categry.Contents as Categoria, avg(ISNULL(case when DATEDIFF(ss, visit.NExtTime, visit.Endtime)>=20 then DATEDIFF(ss, visit.NextTime, visit.Endtime) END,0)) Tiempo_Atencion from visit,categry where visit.branchno=2 and Visit.Category=CATEGRY.Category and Categry.branchno=2 and visit.Regdate='2006-09-01'-- and visit.Regdate<='2007-11-17' group by visit.category,categry.Contents order by categry.Contents Espero tus comentarios. Gracias por tu tiempo. Saludos. |
#2
|
||||
|
||||
Si el resultado de la primera consulta es el correcto, yo añadiría en el where:
No trabajo con sqlserver, pero creo que vale. Si usas ISNULL y el nexTime es un nulo, se contará ese registro en el agregado, colocando un cero para ese registro al hallar la media (avg). Si usas mi sugerencia, eliminas los registros con valores nulos antes de hacer el agregado, así no entran en la media y eliminas el aviso de sqlserver. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#3
|
|||
|
|||
He utilizado tu sugerencia, de tal manera que la consulta quede de la siguiente manera pero igual me sigue saliendo el warning.
select categry.Contents as Categoria, Case when avg(case when DATEDIFF(ss, visit.NExtTime, visit.Endtime)>=20 then DATEDIFF(ss,visit.NextTime, visit.Endtime) END ) >0 then avg(case when DATEDIFF(ss, visit.NExtTime, visit.Endtime)>=20 then DATEDIFF(ss, visit.NextTime, visit.Endtime) END ) else 0 END Tiempo_Atencion from visit,categry where visit.branchno=2 and Visit.Category=CATEGRY.Category and Categry.branchno=2 and visit.Regdate ='2006-09-01' and (visit.Regdate is not null) and (visit.NExtTime is not null) and (visit.Endtime is not null) group by visit.category,categry.Contents order by categry.Contents Que es lo que estoy haciendo mal o como deberia quedar la consulta? Gracias por tu tiempo. Saludos. |
#4
|
||||
|
||||
despúes del avg utiliza isnull( ResultadoDelCase,Convert(DateTime,'FechaDefault',120) )
suerte
__________________
Conoce mi blog http://www.edgartec.com |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Asignar valor nulo a un entero | Shikanda | SQL | 3 | 27-08-2007 14:26:23 |
Valor nulo en un string | ElDioni | Conexión con bases de datos | 5 | 10-11-2005 09:29:57 |
Valor Nulo o en blanco y nil | vtdeleon | OOP | 1 | 25-11-2004 05:41:50 |
Campo con valor nulo | fjcg02 | Conexión con bases de datos | 4 | 10-11-2004 08:55:07 |
Valor nulo | pache | OOP | 3 | 19-06-2003 08:39:13 |
|