Questa funzione restituisce la data che ricorre n mesi dopo startdate oppure, se n è negativo, la data che ricorre n mesi prima di startdate.
Sintassi:
AddMonths(startdate, n
, [ , mode])
Tipo di dati restituiti: duale
La funzione addmonths() aggiunge o sottrae un numero definito di mesi, n, da un startdate e restituisce la data risultante.
L'argomento mode avrà un impatto sui valori startdate non prima del 28 del mese. Impostando l'argomento mode a 1, la funzione addmonths() restituisce una data che equivale nella distanza relativa alla fine del mese come startdate.
Ad esempio, il 28 febbraio è l'ultimo giorno del mese. Se nella funzione addmonths(), con un mode di 1, è utilizzato per restituire la data due mesi dopo, la funzione restituirà l'ultima data di aprile, il 30 aprile.
Argomenti
Argomento
Descrizione
startdate
La data di inizio come indicazione di data e ora, ad esempio '2012-10-12'.
n
Numero di mesi come numero intero positivo o negativo.
mode
Specifica se il mese viene aggiunto relativamente all'inizio o alla fine del mese. La modalità predefinita è 0 per le aggiunte relative all'inizio del mese. Impostare la modalità su 1 per le aggiunte relative alla fine del mese. Quando la modalità è impostata su 1 e la data di input è il 28 o successiva, la funzione controlla quanti giorni mancano per raggiungere la fine del mese nella data di inizio. Sulla data restituita viene impostato lo stesso numero di giorni per raggiungere la fine del mese.
Casi di utilizzo
La funzione addmonths() verrà utilizzata comunemente in un'espressione per trovare una data un certo numero di mesi prima o dopo un periodo di tempo.
Ad esempio, la funzione addmonths() può essere utilizzata per identificare la data di fine dei contratti per la telefonia mobile.
Esempi di funzioni
Esempio
Risultato
addmonths ('01/29/2003' ,3)
Restituisce '04/29/2003'.
addmonths ('01/29/2003',3,0)
Restituisce '04/29/2003'.
addmonths ('01/29/2003',3,1)
Restituisce '04/28/2003'.
addmonths ('01/29/2003',1,0)
Restituisce '02/28/2003'.
addmonths ('01/29/2003',1,1)
Restituisce '02/26/2003'.
addmonths ('02/28/2003',1,0)
Restituisce '03/28/2003'.
addmonths ('02/28/2003',1,1)
Restituisce '03/31/2003'.
addmonths ('01/29/2003',-3)
Restituisce '10/29/2002'.
Impostazioni locali
Se non diversamente specificato, gli esempi di questo argomento utilizzano il seguente formato di data: MM/GG/AAAA. Il formato della data viene specificato nell'istruzione SET DateFormat nello script di caricamento dei dati. La formattazione predefinita della data potrebbe essere diversa nel proprio sistema, a causa delle impostazioni regionali e di altri fattori. È possibile modificare i formati degli esempi seguenti in base alle proprie esigenze. In alternativa, è possibile modificare i formati nel proprio script di caricamento per adattarli a questi esempi.
Le impostazioni regionali predefinite delle app si basano sulle impostazioni regionali del sistema del computer o del server in cui risulta installato Qlik Sense. Se il server Qlik Sense a cui si accede è impostato in Svezia, l'editor caricamento dati utilizzerà le impostazioni regionali svedesi per date, ora e valuta. Queste impostazioni di formato regionale non riguardano la lingua visualizzata nell'interfaccia utente Qlik Sense. Qlik Sense verrà visualizzato nella stessa lingua del browser utilizzato.
Esempio 1 – Nessun argomento aggiuntivo
Panoramica
Aprire l'editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Lo script di caricamento contiene:
Un set di dati contenente un insieme di transazioni tra il 2020 e il 2022, caricato in una tabella denominata Transactions.
Il campo della data fornito nel formato della variabile di sistema DateFormat (MM/GG/AAAA).
La creazione di un campo, two_months_later, che restituisce la data per due mesi dopo l'avvenuta transazione.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
date
two_months_later
Tabella dei risultati
date
two_months_later
01/10/2020
03/10/2020
02/28/2020
04/28/2020
04/09/2020
06/09/2020
04/16/2020
06/16/2020
05/21/2020
07/21/2020
08/14/2020
10/14/2020
10/07/2020
12/07/2020
12/05/2020
02/05/2021
01/22/2021
03/22/2021
02/03/2021
04/03/2021
03/17/2021
05/17/2021
04/23/2021
06/23/2021
05/04/2021
07/04/2021
06/30/2021
08/30/2021
07/26/2021
09/26/2021
12/27/2021
02/27/2022
02/02/2022
04/02/2022
02/26/2022
04/26/2022
03/07/2022
05/07/2022
03/11/2022
05/11/2022
Il campo two_months_later viene creato nell'istruzione caricamento precedente utilizzando la funzione addmonths(). Il primo argomento fornito identifica la data da valutare. Il secondo argomento è il numero di mesi da aggiungere o sottrarre all'intervallo startdate. In questo caso, viene fornito il valore 2.
La transazione 8193 è avvenuta il 14 agosto. Pertanto, la funzione addmonths() restituisce il 14 ottobre 2020 per il campo two_months_later.
Esempio 2 - Fine mese relativo
Panoramica
Aprire l'editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Lo script di caricamento contiene:
Un set di dati contenente una serie di transazioni di fine mese nel 2022, che viene caricato in una tabella chiamata Transactions.
Il campo della data fornito nel formato della variabile di sistema DateFormat (MM/GG/AAAA).
La creazione di un campo, relative_two_months_prior, che restituisce la data di fine mese relativa ai due mesi precedenti la transazione.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
date
relative_two_months_prior
Tabella dei risultati
date
relative_two_months_prior
01/28/2022
11/27/2021
01/31/2022
11/30/2021
02/28/2022
12/31/2021
04/29/2022
02/27/2022
04/30/2022
02/28/2022
05/31/2022
03/31/2022
08/14/2022
06/14/2022
10/07/2022
08/07/2022
Il campo relative_two_months_prior viene creato nell'istruzione caricamento precedente utilizzando la funzione addmonths(). Il primo argomento fornito identifica la data da valutare. Il secondo argomento è il numero di mesi da aggiungere o sottrarre all'intervallo startdate. In questo caso, viene fornito il valore -2. L'ultimo argomento è la modalità, con un valore di 1, che costringe la funzione a calcolare la data di fine mese relativa per tutte le date maggiori o uguali a 28.
La transazione 8191 avrà luogo il 29 aprile 2022. Inizialmente, due mesi prima si sarebbe impostato il mese a febbraio. Quindi, dato che il terzo argomento della funzione imposta la modalità a 1 e il valore del giorno è successivo al 27, la funzione calcola il valore relativo alla fine del mese. La funzione identifica che il 29 è il penultimo giorno di aprile e pertanto restituisce il penultimo giorno di febbraio, il 27.
Esempio 3 - Esempio di oggetto grafico
Panoramica
Aprire l'Editor di caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Lo script di caricamento contiene lo stesso set di dati e lo stesso scenario del primo esempio.
Tuttavia, in questo esempio, il set di dati invariato viene caricato nell'applicazione. Il calcolo che restituisce la data di due mesi dopo la transazione viene creato come misura in un oggetto grafico.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere questo campo come dimensione: date.
Creare la seguente misura:
=addmonths(date,2)
Tabella dei risultati
date
=addmonths(date,2)
01/10/2020
03/10/2020
02/28/2020
04/28/2020
04/09/2020
06/09/2020
04/16/2020
06/16/2020
05/21/2020
07/21/2020
08/14/2020
10/14/2020
10/07/2020
12/07/2020
12/05/2020
02/05/2021
01/22/2021
03/22/2021
02/03/2021
04/03/2021
03/17/2021
05/17/2021
04/23/2021
06/23/2021
05/04/2021
07/04/2021
06/30/2021
08/30/2021
07/26/2021
09/26/2021
12/27/2021
02/27/2022
02/02/2022
04/02/2022
02/26/2022
04/26/2022
03/07/2022
05/07/2022
03/11/2022
05/11/2022
La misura two_months_later viene creata nell'oggetto grafico utilizzando la funzione addmonths(). Il primo argomento fornito identifica la data da valutare. Il secondo argomento è il numero di mesi da aggiungere o sottrarre all'intervallo startdate. In questo caso, viene fornito il valore 2.
La transazione 8193 è avvenuta il 14 agosto. Pertanto, la funzione addmonths() restituisce il 14 ottobre 2020 per il campo two_months_later.
Esempio 4 – Scenario
Panoramica
Aprire l'editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Lo script di caricamento contiene:
Un set di dati che viene caricato in una tabella chiamata Mobile_Plans.
Informazioni con l'ID del contratto, la data di inizio, la durata del contratto e il canone mensile.
L'utente finale vorrebbe un oggetto grafico che visualizzi, per ID contratto, la data di scadenza di ogni contratto telefonico.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
contract_id
start_date
contract_length
Crea la seguente misura per calcolare la data di scadenza di ogni contratto:
=addmonths(start_date,contract_length, 0)
Tabella dei risultati
contract_id
start_date
contract_length
=addmonths(start_date,contract_length,0)
8188
01/13/2020
18
07/13/2021
8189
02/26/2020
24
02/26/2022
8190
03/27/2020
36
03/27/2023
8191
04/16/2020
24
04/16/2022
8192
05/21/2020
24
05/21/2022
8193
08/14/2020
12
08/14/2021
8194
10/07/2020
18
04/07/2022
8195
12/05/2020
12
12/05/2021
8196
01/22/2021
12
01/22/2022
8197
02/03/2021
18
08/03/2022
8198
03/17/2021
24
03/17/2023
8199
04/23/2021
24
04/23/2023
8200
05/04/2021
12
05/04/2022
8201
06/30/2021
12
06/30/2022
8202
07/26/2021
12
07/26/2022
8203
12/27/2021
36
12/27/2024
8204
06/06/2022
24
06/06/2024
8205
07/18/2022
12
07/18/2023
8206
11/14/2022
12
11/14/2023
8207
12/12/2022
18
06/12/2024
Hai trovato utile questa pagina?
Se riscontri problemi con questa pagina o con il suo contenuto – un errore di battitura, un passaggio mancante o un errore tecnico – facci sapere come possiamo migliorare!