2016-07-07 8 views
0

ich benutzerdefinierte SQL-Abfrage in tableau habe, die die Daten in folgendem Format angezeigt:Tableau: Wie Anzahl der Tage berechnen

Start Date | App 
    6/21/16 app1 
    6/22/16 app2 
    6/23/16 app3 

In diesem Fall würde das Enddatum ‚6/23/16‘ sein . App1 war also 2 Tage "live", app2 für 1 und so weiter.

Ich versuche die Anzahl der Tage zu finden, an denen eine App live war. Ich kann versuchen, die DateDiff-Funktion zu verwenden, aber ich würde die Werte in diesem Fall fest codieren müssen und ich möchte, dass es dynamisch ist.

Die Herausforderung besteht darin, ein berechnetes Feld zu haben, das das maximale Datum in der gesamten Spalte findet und es vom Datum der einzelnen Anwendung subtrahiert. Dies würde mir die "Anzahl der Live-Tage" für eine App geben.

Ich bin neu in Tableau und weiß nicht weiter. Jede Hilfe wird geschätzt.

Antwort

3

Hier ist eine Lösung.

datediff('day', [Start Date], { fixed : max([Start Date]) }) 

Beachten Sie den Ausdruck in Curley-Klammern. Dies ist eine Detailberechnung (LOD) - im Grunde eine separate Unterabfrage auf einer potenziell unterschiedlichen Detailebene. So können Sie Werte für jede Zeile mit Werten vergleichen, die basierend auf der gesamten Tabelle berechnet wurden.

Je nachdem, wie und wo Sie diese Berechnung verwenden möchten, möchten Sie möglicherweise die LOD-Berechnung für bestimmte Dimensionen festlegen oder bestimmte Dimensionen ein- oder ausschließen. Die Online-Hilfe sollte erklären.

0

Verwenden Sie einfach "DATEDIFF ('Tag', [Bestelldatum], [Ship Date])", Bestelldatum und Versanddatum sind beispielsweise Abmessungen von Super data.xlxs