Ejemplos de Función Date# y Date para transformar fechas y luego darles formato. Esto como método alternativo a MakeDate, que usa 4 funciones haciendo más lento el load. Ejemplo: MakeDate(Left(20130628,4), Mid(20130628,5,2),Right(20130628,2))
1. Date#(20130628,'YYYYMMDD')
Devuelve 41453 en formato 20130628
2. Date(Date#(20130628,'YYYYMMDD'),'DD-MMM-YY')
Devuelve 41453 con formato 28-jun-13
3. Date(Date#('2013.06.28','YYYY.MM.DD'),'DD-MMM-YY')
Devuelve 41453 con formato 28-jun-13
4. Date(Date#('06-28-13','MM-DD-YY'),'DD-MMM-YY')
Devuelve 41453 con formato 28-jun-13
5. Date(Date#('28.06.13' ,'DD.MM.YY'),'DD-MMM-YY')
Devuelve 41453 con formato 28-jun-13
6. Date(Date#('jun.28.2011', 'MMM.DD.YYYY'), 'DD-MMM-YY')
Devuelve 41453 con formato 28-jun-13
7. Para eliminar hora de una fecha
Date(Floor( '2013-06-28 07:30:38' ),'DD-MMM-YY')
Devuelve 41453 con formato 28-jun-13 sin minutos
8. Para obtener solo la hora de una fecha
Time(Frac( '2013-06-28 11:30:38' ),'hh:mm:ss')
Devuelve 0,47960648148 con formato 11:30:38
9. Para obtener Fecha y Hora
Date( Timestamp#( '20130628 11:30:38', 'YYYYMMDD hh:mm:ss'), 'DD-MMM-YY hh:mm:ss' )
Devuelve 41453,479606481 con formato 28-jun-13 11:30:38
10. Para obtener día de la semana en fecha
Date( '2013-06-28', 'WWW DD-MMM-YY')
Devuelve 41453 con formato vie 28-jun-13
11. Resta un mes a la fecha
AddMonths('2013-06-28',-1)
Devuelve 41422 en formato 28/05/2013 (formato predeterminado)
12. Suma un mes a la fecha
AddMonths('2013-06-28', 1)
Devuelve 41453 en formato 28/07/2013 (formato predeterminado)
13. Transforma la hora en un rango de 30 minutos:
Time( Floor('09:55',0.02083333333333330),'hh:mm')
Devuelve 0.395833333 en formato 09:30
14. Transforma la hora en un rango de 10 minutos
Time( Floor('09:55',0.006944444444444440),'hh:mm')
Devuelve 0.4097222222 en formato 09:50
NOTAS:
Al indicar un formato de hora en Qlikview la letra mayuscula M= mes, y letra minuscula m= minutos
Otras transformaciones:
Para eliminar ceros a la izquierda, ver nota publicada aquí
Para transformar campos en escala normalizada, ver notas publicada aqui
Para transformar campos en escala normalizada especifica, ver notas publicada aqui
1 comentario:
Muy útil, añadiria también aquellos formatos de fecha que incluyen PM/AM, que se pueden indicar con TT, ver enlace: https://community.qlik.com/t5/QlikView-App-Development/Convert-DD-MM-YYYY-hh-mm-AM-into-date/td-p/1449233
Gracias!
Publicar un comentario