Antalet månader mellan två datum

Option: Read this blog post in English


Att räkna antalet månader mellan två datum kan vid första anblicken se knepigt ut. Det finns ingen färdig funktion för detta i QlikView eller Sense. Använder man age()-funktionen får man bara ut antalet år.


Tänk er att vi har försäljningsdata kopplat till kunder. Vi vill nu se hur mycket kunderna köper för fördelat på åldern i månader. För detta har vi ett orderdatum på kundordern och vi har ett registreringsdatum på kunden. Ett sätt att göra denna beräkning är följande formel:


year(Orderdatum)*12 + month(Orderdatum) - (year(Registreringsdatum)*12 + month(Registreringsdatum))


Formeln använder sig av att month(datumfält) ger tillbaka ett numeriskt värde 1-12 för månaden.


Låt oss testa en order med ett Orderdatum 2021-02-14 och med en kund med Registreringsdatum 2019-05-02. Formeln ger då:

2021*12 + 2 - (2019*12 + 5) = 24252 + 2 - (24228 + 5) = 24254 - 24233 = 21


Kontroll ger:

2019: 7 månader

2020: 12 månader

2021: 2 månader

Totalt: 7 + 12 + 2 = 21


Observera dock att formeln inte tar hänsyn när i månaden en kund skapades eller ordern lades.


Vi kan skapa en graf för försäljningen:


Skriven av: Morgan Kejerhag

Morgan Kejerhag har arbetat med Qlik-plattformen sedan 2005 och är en av Sveriges mest erfarna konsulter. Under åren har Morgan arbetat med flertalet multinationella bolag där han lett arbetet i att bygga upp stora Qlik-miljöer såväl som små kunder. LinkedIn Kontaktuppgifter