KNOWLEDGE BASE

Creazione di calcoli di data per intervalli di date specifici


Pubblicato: 31 Jan 2013
Data dell'ultima modifica: 25 Aug 2023

Domanda

Come creare campi calcolati che possono essere utilizzati per filtrare specifici intervalli di date, come gli ultimi n giorni, la settimana precedente o un intervallo specifico di date.

Ambiente

Tableau Desktop

Risposta

Usa le seguenti formule come modelli da cui creare campi calcolati. Nelle formule seguenti, Data è il nome della dimensione della data.
 
FAI CLIC PER ESPANDERE LA SOLUZIONE

Filtra un intervallo di giorni

Utilizza la seguente formula per creare un campo calcolato che filtri per gli ultimi n giorni:

IF [Date] < (today() - <n> + 1) OR [Date] > today() THEN NULL ELSE [Date] END
Ad esempio, un campo calcolato che filtra i dati degli ultimi 90 giorni avrebbe la seguente formula:
IF [Date] < (today() - 90 + 1) OR [Date] > today() THEN NULL ELSE [Date] END
Formula per gli ultimi 7 giorni:
IF [Date] < (today() - 7 + 1) OR [Date] > today() THEN NULL ELSE [Date] END
 
FAI CLIC PER ESPANDERE LA SOLUZIONE

Filtra per settimane

Utilizza la seguente formula per filtrare i dati della penultima settimana:
IF [Date] > (today() - 8 + 1) OR [Date] <= (today() - 15 + 1)
THEN NULL ELSE [Date] END
Utilizza la seguente formula per filtrare per le ultime otto settimane:
IF 
DATEPART('week', [Date]) <DATEPART('week', TODAY()) - 8 
OR 
DATEPART('week', [Date]) > DATEPART('week', TODAY()) -1 
THEN NULL 
ELSE [Date]
END

Ulteriori informazioni

  • Puoi usare un parametro data, un altro campo o una data fissa al posto di TODAY() per basare il calcolo su una data selezionata come inizio diversa.
  • I calcoli possono essere modificati con uno qualsiasi dei valori di parte_data elencati in Funzioni data per filtrare diversi livelli di data.

Per visualizzare gli esempi precedenti nella pratica, guarda il video seguente.

Nota: la data massima dell'origine dati Sample - Superstore è il 6 gennaio 2016 per la dimensione della data di spedizione. Ciò significa che non siamo in grado di usare TODAY() ma usiamo un sostituto. 


Con questo articolo hai risolto il problema?