Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Varios Formatos de Fecha

Hola,

Tengo en una misma base de datos la información de la fecha con formatos diferente es decir, algunos registros están como DD/MM/YYYY, otras están como MM/DD/YYYY, ¿Cómo hago para unificar la fecha?  Muchas gracias!

1 Solution

Accepted Solutions
MarcoWedel

Hi,

you could try with


Alt(Date#(fecha,'DD/MM/YYYY'),Date#(fecha,'MM/DD/YYYY')) as fecha


but like Enrique already said (as far as I understood 😉 this will only give correct results for unambiguous date-strings.


hope this helps


regards


Marco

View solution in original post

7 Replies
ecolomer
Master II
Master II

Si no tienes otro dato que te permita decidir el formato en el que está, tienes amplias posibilidades de equivocación.

Por ejemplo la fecha 08/06/2015, puede ser de Junio(06) o de Agosto (08).

Las únicas que podrás reconocer son las que tengan un valor en los dos primeros dígitos (24/03/2015) o en los dos dígitos siguientes (03/24/2015) con un valor superior a 12, porque eso indicará que ese valor no es el mes y por lo tanto es el día.

Not applicable
Author

Hola, gracias por responder.  El real es DD/MM/YYYY, así qué cómo hago con QV para transformar los que están en MM/DD/YYYY?

nagaiank
Specialist III
Specialist III

if you want to transform the date in MM/DD/YYYY to DD/MM/YYYY use

Date(Date#(inputDate,'MM/DD/YYYY'),'MM/DD/YYYY') as modifiedDate

if you want to transform the date in DD/MM/YYYY to MM/DD/YYYY use

Date(Date#(inputDate,'DD/MM/YYYY'),'MM/DD/YYYY') as modifiedDate

MarcoWedel

Hi,

you could try with


Alt(Date#(fecha,'DD/MM/YYYY'),Date#(fecha,'MM/DD/YYYY')) as fecha


but like Enrique already said (as far as I understood 😉 this will only give correct results for unambiguous date-strings.


hope this helps


regards


Marco

ecolomer
Master II
Master II

Para transformar las que están en formato MM/DD/YYYY debes poner:

Date(Date#(FechaEntrada,'MM/DD/YYYY'),'MM/DD/YYYY') as FechaNueva


o bien, tal y como ha escrito @Marco Wedel:


Alt(Date#(fecha,'DD/MM/YYYY'),Date#(fecha,'MM/DD/YYYY')) as fecha

Not applicable
Author

Hola a todos, definitivamente con la función "ALT" funcionó perfectamente, muchas gracias!!

ecolomer
Master II
Master II

Si ya lo tienes resuelto, da una de las respuestas como acertada y cierra el hilo.

Saludos,

ecolomer