Buenas tardes,
Estoy tratando de leer campos fecha que vienen de tabla Oracle con el lenguaje SAS/BASE.
Al bajar los datos a SAS los crea en la tabla SAS con formato fecha y para poder cruzarlos con datos de otra tabla SAS necesito pasar la fecha a campo numérico.
Estoy en la versión 9 de SAS.
Cualquier ayuda, seré bienvenida.
- Inicie sesión para enviar comentarios
Buenas Espinosa, Si nos
Subido por Juan_Vidal el 1 Abril, 2014 - 12:25
Buenas Espinosa,
Si nos aclaras en qué formato numérico quieres guardar la fecha SAS, vemos como ayudarte.
Un saludo,
Hola, Me interesa pasar de
Subido por jjespinosa10@y… el 1 Abril, 2014 - 13:12
Hola,
Me interesa pasar de formato date SAS a formato numérico yyyymmdd
gracias por adelantado,
Te paso un ejemplo, espero te
Subido por Juan_Vidal el 1 Abril, 2014 - 14:10
Te paso un ejemplo, espero te sirva:
/* Partiendo de una variable tipo fecha la convertimos en un
numérico con formato yyyymmdd */
data fechas;
fecha_num = input(put(fecha_date,yymmddn8.),8.);
run;
http://recursossassoftware.blogspot.com
Funciona!!, muchas gracias
Subido por jjespinosa10@y… el 1 Abril, 2014 - 14:23
Funciona!!, muchas gracias
Buenos días, Vuelvo a
Subido por jjespinosa10@y… el 3 Abril, 2014 - 09:44
Buenos días,
Vuelvo a pedir ayuda.
Tengo mi fecha en SAS en formato yyyymmdd, después de haber trabajado con la tabla SAS , tengo que cargar tabla Oracle en la que el campo fecha es de tipo date. Necesito transformar númerico en tipo date, pero ahora en Oracle.
Gracias por la ayuda!!
A ver si te sirve
Subido por Juan_Vidal el 3 Abril, 2014 - 14:00
A ver si te sirve esto:
Transformar numérico con contenido yyyymmdd a tipo date
Si la transformación la haces en el motor de Oracle:
fecha_date = to_date(fecha_num, 'yyyymmdd')
Si la haces en SAS:
fecha_date = mdy((mod((int(fecha_num/100)),100)),(mod(fecha_num,100)), int(fecha_num/10000)))
Hola de nuevo, Me esta
Subido por jjespinosa10@y… el 4 Abril, 2014 - 12:02
Hola de nuevo,
Me esta dando problemas la función to_date de Oracle, necesita que la fecha vaya entre comillas y no
consigo insetarlas desde el proc sql de SAS:
fecha_date = to_date('20140401', 'yyyymmdd')
La cuestión es que lo ejecuto desde un proc sql de SAS y no doy con la sintaxis para insertar las comillas antes de la variable.
Prueba lo siguiente desde el
Subido por Juan_Vidal el 4 Abril, 2014 - 12:18
Prueba lo siguiente desde el proc sql de SAS:
Si es un campo de la tabla SAS:
to_date(%str(%')fecha_num%str(%'), 'yyyymmdd')
si es una macrovariable
to_date(%str(%')&fecha_num%str(%'), 'yyyymmdd')
Espero sirva de ayuda