SQL - SENTENCIA NUEVAMENTE

 
Vista:

SENTENCIA NUEVAMENTE

Publicado por DAVID (4 intervenciones) el 13/01/2005 14:23:10
hola a todos!!! necesito una favor a ver quien sabe!si corro esta sentencia:
SELECT ESTADO=lista.estado,HORA = DATEPART(HH, starttime),CANTIDAD = Count(starttime),oracle.STARTTIME
FROM Lista INNER JOIN oracle ON oracle.CALLING_NUMBER = Lista.TELEFONO
WHERE Lista.ESTADO like 'MR' AND Lista.REGION like 'CP'
GROUP BY lista.estado,oracle.starttime,DATEPART(HH, starttime)ORDER BY 2 asc

me arroja una cantidad los datos que quiero pero quisiera que en hora me apareciera un solo numero al igual que en cantidad, es decir,
que me aparezca asi:

Estado hora cantidad starttime
MR 6 24 12/01/2005
MR 7 28 12/01/2005

YA QUE ACTUALMENTE ME APARECE ES ASI:

Estado hora cantidad starttime
MR 6 1 12/01/2005
MR 6 1 12/01/2005
MR 6 1 12/01/2005
MR 6 1 12/01/2005
MR 7 1 12/01/2005
MR 7 1 12/01/2005
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
sin imagen de perfil

RE:SENTENCIA NUEVAMENTE

Publicado por Liliana (426 intervenciones) el 14/01/2005 11:02:00
Hola David,
Al menos con MS SQL Server, la fecha se almacena con la hora incluída.
El agrupar por oracle.starttime, es lo que te trae el problema que mencionás.
En T-SQL, la solución es tomar solo la parte de fecha con la instrucción CONVERT, y el 103 te indica el estilo (dd/mm/aaaa):

SELECT ESTADO = lista.estado, HORA = DATEPART(HH, starttime),
CANTIDAD = Count(starttime), CONVERT(CHAR(10), oracle.starttime, 103)
FROM Lista
INNER JOIN oracle ON oracle.CALLING_NUMBER = Lista.TELEFONO
WHERE Lista.ESTADO LIKE 'MR' AND Lista.REGION LIKE 'CP'
GROUP BY lista.estado, CONVERT(CHAR(10), oracle.starttime, 103), DATEPART(HH, starttime)
ORDER BY 2 asc

Saludos, Liliana.
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