Gracias Bernabé pero los timestamp no contienen en las primeras posiciones el
año y luego el mes etc.
Los valores timestamp son el número de segundos (o microsegundos) que han
transcurrido desde una fecha base. Por ejemplo
desde 01/01/1970 a las 00:00 y en mi fichero para ese campo tengo valores como
estos:
..+....1....+....2....+
Timestamp
1.276.578.852.858
1.276.543.463.928
1.276.531.572.321
1.276.526.471.606
1.276.524.121.731
1.276.523.784.384
1.276.519.667.275
1.276.519.630.634
1.276.519.591.728
1.276.519.556.806
1.276.519.525.806
1.276.519.298.401
Por lo que no tengo ni idea de como extraer la fecha de ese valor. Parece que
son los mili-segundos desde 1/1/1970 pero
debe existir una funcion que lo convierta en fecha, porque de otra forma es muy
inexacto, (dividir por 40 años a 365,25 dias por año, y luego por 24 horas a
3600 segundos, mas los dias que llevamos de este año etc..... un rollo vamos)
Muchas gracias igualmente...
Saludos
J. Sanchez
----- Original Message -----
From: Bernabé Estrada
To: 'forum.help400'
Sent: Tuesday, June 15, 2010 6:29 AM
Subject: RE: En SQL convertir a fecha + hora un campo TIMESAMTP
Entonces lo mas sencillo es hacer armar un campo con el formato de fecha
(yyyy-mm-dd por ejemplo) concatenando los substring de cada parte del campo.
Mas o menos asi: SELECT date( substr(digits(myfld),1,4) || '-' ||
substr(digits(myfld),5,2) || '-' || substr(digits(myfld),7,2)) FROM myarchivo
(Claro, dependiendo de en que posiciones de tu campo estén el año, mes y dia)
Saludos.
From: [email protected]
[mailto:[email protected]] On Behalf Of Josep Sanchez
Sent: Lunes, 14 de Junio de 2010 09:33 a.m.
To: forum.help400
Subject: Re: En SQL convertir a fecha + hora un campo TIMESAMTP
Hola que tal,
year(myfield) me da argumento 1 no valido. Lo mismo que si hago
year(myfield*100000000)
El campo en el fichero es un numerico de 18,0 pero la cifra grabada son las
18 primeras posiciones de un
Timestamp en tiempo de ejecución.
Supongo que para la base datos es un númerico y basta pero yo necesito saber
que fecha se esconde en esa cifra.
Gracias por tu ayuda.
----- Original Message -----
From: Bernabe Estrada
To: 'forum.help400'
Sent: Monday, June 14, 2010 4:12 PM
Subject: RE: En SQL convertir a fecha + hora un campo TIMESAMTP
No me suena un timestamp de 18, pero proba extraer el month, year y day
para ver si realmente lo reconoce como fecha.
Select year(myfield), month(myfield), day(myfield) ...
Saludos.
From: [email protected]
[mailto:[email protected]] On Behalf Of Josep Sanchez
Sent: Lunes, 14 de Junio de 2010 04:13 a.m.
To: forum.help400
Subject: En SQL convertir a fecha + hora un campo TIMESAMTP
Hola a todos,
En un fichero tengo un campo de 18,0 empaquetado en el que se guarda un
valor timestamp,
(debe ser truncado porque creo recordar que los campos Timestamp reales
ocupaban 26 digitos)
El caso es que intento convetirlo en una fecha normal y no funciona
He probado:
select date(myfield), a.* from myfile a where myfield<>0
y tambien
select date(myfield*100000000), a.* from myfile a where myfield<>0
en ambos casos me devuelve asteriscos...
Alguien sabe como ver este dato convertido en fecha ??
Gracias de antemano.
J.Sanchez
----------------------------------------------------------------------------
____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.
------------------------------------------------------------------------------
____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.