Oracle - No puedo agrupar por fechas

   
Vista:

No puedo agrupar por fechas

Publicado por CarlosQ (1 intervención) el 13/03/2012 14:46:57
Hola maestros no me manejo mucho en Oracle con MS SQL SERVER mucho mejor

no puedo agrupar tengo este query muy sensilla

SELECT DISTINCT CREATED_DATE, COUNT(*) AS ALARMAS
FROM ALARMS
WHERE trunc(CREATED_DATE) > (SELECT trunc(SYSDATE-7) FROM DUAL)
GROUP BY CREATED_DATE
ORDER BY CREATED_DATE;

resultado no agrupado por fecha

07/03/12 1
07/03/12 1
07/03/12 1
07/03/12 1
07/03/12 1
07/03/12 1
08/03/12 1
08/03/12 1
08/03/12 1

por favor como lo soluciono,

saludos,
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

No puedo agrupar por fechas

Publicado por Javier M (17 intervenciones) el 17/03/2012 18:33:24
Quitale el distinct
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

No puedo agrupar por fechas

Publicado por Luis (232 intervenciones) el 15/10/2012 07:21:10
Hola Carlos

Te recomiendo este select :


SELECT CREATED_DATE, COUNT(1) AS ALARMAS
FROM ALARMS
WHERE trunc(CREATED_DATE) > trunc(SYSDATE)-7
GROUP BY CREATED_DATE
ORDER BY 1;


Usa el count(1) es menos costoso que el count(*) , si lo agrupas ya no es necesario usar el distinct, otra recomendacion si usas funciones en CREATED_DATE y si esta columna tiene indices la bd no utilizara el indice, otra .. no es necesario que uses otro select pues ya tienes el SYSDATE y simplemente lo operas. Ten cuidado de no hacer que tu select sea mas costoso pues esto lo hace mas lento y se puede degradar al momento que funcione en un ambiente de producción. Cualquie consulta me escribes. Suerte.

Saludos

Luis.
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

No puedo agrupar por fechas

Publicado por Alixandro florian_do@yahoo.com (63 intervenciones) el 03/06/2013 19:33:18
Calos, puedes lograr agrupar por la fecha, si trunca el campo, (ej.: Trunc(Create_Date) As Create_Date. Debes eliminar el distinct y el order by, asi recupera performance en ejecucion del query. Nota: cuando agrupa, por defecto se ordenan las filas por el o los campos del group by.
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