SQL Server - Convertir varchar a DateTime

   
Vista:

Convertir varchar a DateTime

Publicado por Andres (8 intervenciones) el 10/11/2008 21:08:39
Saludos a todos!!!
Exporte una tabla de una base de datos por medio de OLEDB a mi servidor SQL server 2005. lo que ocurre es que nececsitor un procedimiento que me convierta los datos de una columna que son varchar a DateTIme.
Por ejemplo. la columna exportada se llama fecha_lectura y contiene el siguiente dato: 30/04/08 Yo necesito que ese dato se convierta en 04/30/2008 .

que puedo hacer????????? y mas imporaten aun.......COMO LO HAGO!!!!!!!!!!!


gracias y 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

RE:Convertir varchar a DateTime

Publicado por Isaias (3308 intervenciones) el 12/11/2008 03:31:27
Andres

SQL Server, maneja fechas con formato ANSI (yyyymmdd hh:mm:ss, nnn), si quieres manejar fechas tienes muchas funciones como:

DATEPART
CONVERT/CAST
DAY
YEAR
MONTH

Al menos desde 6.5 hasta 2005, en 2008, ya se separan fechas de horas.
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

RE:Convertir varchar a DateTime

Publicado por Andres (8 intervenciones) el 12/11/2008 16:54:54
Muchas gracias Isaias
Pero igual, estoy buscando un poco de info sobre el comando Convert/Cast y aun no encuentra algo que me ayude, parece que lo estoy haciendo mal. si me puede dar una luz, para convertir un dato que viene de la siguiente forma a Datetima:

varchar original datetime

30/12/208 ------------ 12/30/2008


graciassss
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

RE:Convertir varchar a DateTime

Publicado por Isrelito (1 intervención) el 10/02/2009 23:01:06
simplemente convierte la fecha que tienes en formato varchar y luego aplicas el comando convert:

select fecha_emision, convert(varchar,fecha_emision,103) from facturas;
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

RE:Convertir varchar a DateTime

Publicado por Mauricio (67 intervenciones) el 27/11/2008 02:58:42
Hola,

Entiendo que el valor original en tu ejemplo 30/04/08 y lo quieres convertir a fecha, es correcto? Siendo así, tienes varias opciones, la más simple que se me ocurre es:

cast('20' + substring(@x, 7,2) + '-' + substring(@x, 4, 2) + '-' + substring(@x,1,2) as smalldatetime)

donde@x = '30/04/08'

Nada más que tiene una pega este método y es con los años anteriores a 2000, para solucionar esto posiblemente podrías sustituir el dato '20' por una condición

case when right(year(getdate()),2) < substring(@x, 7, 2) then '19' else '20' end
+ substring(@x, 7,2) + '-' + substring(@x, 4, 2) + '-' + substring(@x,1,2)

Aunque de nuevo, habría que ver la naturaleza de tus datos de origen.

Espero haberte sido de utilidad. Saludos!
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