FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
¿Como pasar de VARCHAR a DATE?
Tengo que hacer una consulta para pasar datos de una tabla antigua a otra nueva, y el problema es que en la antigua el campo fecha esta almacenado en un VARCHAR y en la actual esta en un DATE. Como puedo resolverlo.
Gracias. |
#2
|
||||
|
||||
Hola.
¿ Has probado con CAST ? cast(CAMPO as datetime) El problema es que imagino que solo hara la transformación si está en un formato reconocible por el motor de Firebird, es decir : mm/dd/yyyy Saludos
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#3
|
||||
|
||||
El problema es que el formato es diferente
Esta asi yymmdd, por ejemplo en lugar de poner 25/02/2004 --> 040225
Alguna idea de hacerlo mediante SQL, utilizo interbase 6. |
#4
|
||||
|
||||
Si tenes instalada alguna udf que te incluya la función substr o alguna equivalene podrias hacer algo como:
cast(substr(fecha, 3, 2)||'/'||substr(fecha, 6, 2)||'/20'||substr(fecha, 1, 2) as Date) he asumido, en este caso, que todas las fechas seran superiores al 1/1/2000. Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#5
|
||||
|
||||
Una curiosidad
¿Y porque no usa el StrToDate o StrToDateTime? y una vez pasado a TDateTime lo inserta en el campo.
Yo la funcion Cast() no la entiendo si me despejais mis dudas os lo agradeceria |
#6
|
||||
|
||||
Hola.
Cita:
CAST es la función SQL estándar para cambiar de tipo un valor. Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
|
|
|