0

Laufzeit in Monaten ermitteln

Hallo, kann mir jemand auf die Sprünge helfen:

Ich versuche zu ermitteln, wieviel Datensätze pro Monat aktiv waren. Dafür habe ich eine Liste mit jeweils zwei  Daten (datum): "Start" und "Ende" der Laufzeit. Also:

Datensatz 1: 01.01.2019-31.05.2019 => Aktiv in Monat 1, 2, 3, 4, 5
Datensatz 2: 01.02.2019-31.05.2019 => Aktiv in Monat 2, 3, 4, 5
Datensatz 3: 01.07.2019-31.07.2019 => Aktiv in Monat 7

Und als Ergebnis dann:
Jan: 1 Datensatz , Feb: 2 Datensatze, März: 2 , April: 2 , Mai: 2. , Juni 0, Juli: 7

 

Kann mir jemand mit der Funktion helfen?

5 Antworten

null
    • Backend
    • Odilia
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Korrektur: Juli: 1

    • Frank_Bohmer
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Odilia, das könnte man mit einer Formel abfragen, zB für Januar:

    yearmonth(Start) <= "2020/01" and yearmonth(Ende) >= "2020/01"

    VG, Frank

    • Leonid_Semik
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Odilia,

    wenn die Datensätze alle in einem Jahr liegen dann als Funktionsfeld:

    ---

    concat(for i in range(1,13) do
    let myCount:=cnt(select TABELLENNAME[month(Start)<=i and month(Ende)>=i]);
    if myCount>0 then monthName(i)+" : "+myCount+" "+if myCount=1 then  "Datensatz" else "Datensätze" end end
    end)

    ---

    Leo

    • Leonid_Semik
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Habe gemerkt - die Nullen brauchst du auch:

    ---

    concat(for i in range(1,13) do
    let myCount:=cnt(select TABELLENNAME[month(Start)<=i and month(Ende)>=i]);
    monthName(i)+" : "+myCount+" "+if myCount=1 then  "Datensatz" else "Datensätze" end
    end)

    ---

    • Backend
    • Odilia
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Super, vielen Dank! Beide Ansätze kann ich gut gebrauchen. VG, Odilia

Content aside

  • vor 4 JahrenZuletzt aktiv
  • 5Antworten
  • 806Ansichten