SQL Server - Separar fecha y hora de un campo

   
Vista:

Separar fecha y hora de un campo

Publicado por Felipe (2 intervenciones) el 18/07/2012 22:39:47
Actualmente estoy ejecutando un comando por sqlcmd para exportar datos de mi tabla de SQL2008 Express a un archivo TXT con el siguiente comando:

sqlcmd -S EQUIPOC\INSTANCIA -o C:\Datos.txt -U USUARIO -P PASSWORD -d BASEDEDATOS -Q "set nocount on; SELECT 151 as Campo1, [Campo2], [Campo3], [Campo4] FROM Tabla WHERE convert(datetime, convert(varchar, [Campo2], 108), 108) between convert(datetime, '08:00:00', 108) AND convert(datetime, '23:00:00', 108) " -h-1 -s ";"

este es el resultado:

151;2012-07-17 13:00:00.000; 57; 45
151;2012-07-17 14:00:00.000; 24; 22
151;2012-07-17 15:00:00.000; 0; 0
151;2012-07-17 16:00:00.000; 140; 119
151;2012-07-17 17:00:00.000; 90; 99
151;2012-07-17 18:00:00.000; 13; 20
151;2012-07-17 19:00:00.000; 0; 0
151;2012-07-17 20:00:00.000; 0; 0
151;2012-07-17 21:00:00.000; 0; 0
151;2012-07-17 22:00:00.000; 0; 0
151;2012-07-17 23:00:00.000; 0; 0
151;2012-07-18 00:00:00.000; 0; 0
151;2012-07-18 01:00:00.000; 0; 0
151;2012-07-18 02:00:00.000; 0; 0
151;2012-07-18 03:00:00.000; 0; 0
151;2012-07-18 04:00:00.000; 0; 0
151;2012-07-18 05:00:00.000; 0; 0
151;2012-07-18 06:00:00.000; 0; 0
151;2012-07-18 07:00:00.000; 0; 0
151;2012-07-18 08:00:00.000; 1; 0
151;2012-07-18 09:00:00.000; 42; 33
151;2012-07-18 10:00:00.000; 93; 125
151;2012-07-18 11:00:00.000; 114; 124
151;2012-07-18 12:00:00.000; 76; 66

Como se ve estoy extrayendo la data de horarios especificos, pero tengo un problema, necesito separar el segundo campo que dentro de mi tabla es llamado DateTimeStamp y separar la fecha y la hora en distintos campos pero no se que metodo puedo ocupar.

Mi otro problema es como almacenar 10 días en el TXT ya que se me formaria un archivo muy grande si pasaran 3 meses o mas, por lo que necesito que en el TXT siempre hayan 10 dias de historial.

Agradezco de antemano su ayuda.

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

Separar fecha y hora de un campo

Publicado por Franklin Gamboa (7 intervenciones) el 19/07/2012 18:45:36
Puedes usar la funcion datepart() para lograr separar las fechas.

http://msdn.microsoft.com/es-es/library/ms174420.aspx

Para la parte del historico, eso debes manejarlo a nivel de aplicacion, asi SQL se encarga anda mas de la gestion de datos.
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
Imágen de perfil de Isaias

Separar fecha y hora de un campo

Publicado por Isaias (3181 intervenciones) el 19/07/2012 20:03:00
Ya hice el comentario que TIMESTAMP es un dato de tipo BINARIO y nada tiene que ver con FECHAS.
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

Separar fecha y hora de un campo

Publicado por andres (4 intervenciones) el 22/10/2012 23:09:04
select
CONVERT ( varchar, campo ,111) as fecha,
CONVERT ( varchar, campo ,108) as hora

espero te sirva eso para la primera parte
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