day - fonction de script et fonction de graphique
Cette fonction renvoie un entier représentant le jour au cours duquel la fraction de l'expression est interprétée comme une date selon l'interprétation standard des nombres.
La fonction renvoie le jour de la semaine d'une date donnée. Elle est couramment utilisée pour dériver un champ Jour dans le cadre d'une dimension Calendrier.
day(expression)
entier
Exemple | Résultat |
---|---|
day( 1971-10-12 ) |
renvoie 12. |
day( 35648 ) | renvoie 6, car 35648 = 1997-08-06. |
Exemple 1 – Ensemble de données DateFormat (script)
Vue d'ensemble
Ouvrez l'Éditeur de chargement de données et ajoutez le script de chargement ci-dessous à un nouvel onglet.
Le script de chargement contient :
-
Un ensemble de données de dates appelé Master_Calendar. La variable système DateFormat est définie au format DD/MM/YYYY.
-
Un chargement précédent qui crée un champ supplémentaire, appelé day_of_month, via la fonction day().
-
Un champ supplémentaire, appelé long_date, qui utilise la fonction date() pour exprimer le nom de mois complet.
Script de chargement
SET DateFormat='DD/MM/YYYY';
Master_Calendar:
Load
date,
date(date,'dd-MMMM-YYYY') as long_date,
day(date) as day_of_month
Inline
[
date
03/11/2022
03/12/2022
03/13/2022
03/14/2022
03/15/2022
03/16/2022
03/17/2022
03/18/2022
03/19/2022
03/20/2022
03/21/2022
];
Résultats
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :
-
date
-
long_date
-
day_of_month
date |
long_date |
day_of_month |
---|---|---|
03/11/2022 |
11-March- 2022 |
11 |
03/12/2022 |
11-March- 2022 |
12 |
03/13/2022 |
13-March- 2022 |
13 |
03/14/2022 |
14-March- 2022 |
14 |
03/15/2022 |
15-March- 2022 |
15 |
03/16/2022 |
16-March- 2022 |
16 |
03/17/2022 |
17-March- 2022 |
17 |
03/18/2022 |
18-March- 2022 |
18 |
03/19/2022 |
19-March- 2022 |
19 |
03/20/2022 |
20-March- 2022 |
20 |
03/21/2022 |
21-March- 2022 |
21 |
Le jour du mois est correctement évalué par la fonction day() du script.
Exemple 2 – Dates ANSI (script)
Vue d'ensemble
Ouvrez l'Éditeur de chargement de données et ajoutez le script de chargement ci-dessous à un nouvel onglet.
Le script de chargement contient :
-
Un ensemble de données de dates appelé Master_Calendar. La variable système DateFormat DD/MM/YYYY est utilisée. Cependant, les dates incluses dans l'ensemble de données sont au format de date standard ANSI.
-
Un chargement précédent qui crée un champ supplémentaire, appelé day_of_month, via la fonction date().
-
Un champ supplémentaire, appelé long_date, qui utilise la fonction date() pour exprimer la date avec le nom de mois complet.
Script de chargement
SET DateFormat='DD/MM/YYYY';
Master_Calendar:
Load
date,
date(date,'dd-MMMM-YYYY') as long_date,
day(date) as day_of_month
Inline
[
date
2022-03-11
2022-03-12
2022-03-13
2022-03-14
2022-03-15
2022-03-16
2022-03-17
2022-03-18
2022-03-19
2022-03-20
2022-03-21
];
Résultats
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :
-
date
-
long_date
-
day_of_month
date |
long_date |
day_of_month |
---|---|---|
03/11/2022 | 11-March- 2022 | 11 |
03/12/2022 | 11-March- 2022 | 12 |
03/13/2022 | 13-March- 2022 | 13 |
03/14/2022 | 14-March- 2022 | 14 |
03/15/2022 | 15-March- 2022 | 15 |
03/16/2022 | 16-March- 2022 | 16 |
03/17/2022 | 17-March- 2022 | 17 |
03/18/2022 | 18-March- 2022 | 18 |
03/19/2022 | 19-March- 2022 | 19 |
03/20/2022 | 20-March- 2022 | 20 |
03/21/2022 | 21-March- 2022 | 21 |
Le jour du mois est correctement évalué par la fonction day() du script.
Exemple 3 – Dates non formatées (script)
Vue d'ensemble
Ouvrez l'Éditeur de chargement de données et ajoutez le script de chargement ci-dessous à un nouvel onglet.
Le script de chargement contient :
-
Un ensemble de données de dates appelé Master_Calendar. La variable système DateFormat DD/MM/YYYY est utilisée.
-
Un chargement précédent qui crée un champ supplémentaire, appelé day_of_month, via la fonction day().
-
La date non formatée d'origine, appelée unformatted_date.
-
Un champ supplémentaire, appelé long_date, utilisant la fonction date(), est utilisé pour convertir la date numérique en champ de date formatée.
Script de chargement
SET DateFormat='DD/MM/YYYY';
Master_Calendar:
Load
unformatted_date,
date(unformatted_date,'dd-MMMM-YYYY') as long_date,
day(date) as day_of_month
Inline
[
unformatted_date
44868
44898
44928
44958
44988
45018
45048
45078
45008
45038
45068
];
Résultats
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :
-
unformatted_date
-
long_date
-
day_of_month
unformatted_date |
long_date |
day_of_month |
---|---|---|
44868 |
03-November- 2022 |
3 |
44898 |
03-December- 2022 |
3 |
44928 |
02-January- 2023 |
2 |
44958 |
01-February- 2023 |
1 |
44988 |
03-March- 2023 |
3 |
45008 |
23-March- 2023 |
23 |
45018 |
02-April- 2023 |
2 |
45038 |
22-April- 2023 |
22 |
45048 |
02-May- 2023 |
2 |
45068 |
22-May- 2023 |
22 |
45078 |
01-June- 2023 |
1 |
Le jour du mois est correctement évalué par la fonction day() du script.
Exemple 4 – Calcul du mois d'expiration (graphique)
Vue d'ensemble
Ouvrez l'Éditeur de chargement de données et ajoutez le script de chargement ci-dessous à un nouvel onglet.
Le script de chargement contient :
-
Un ensemble de données de commandes passées en mars appelé Orders. La table contient trois champs :
-
id
-
order_date
-
amount
-
Script de chargement
Orders:
Load
id,
order_date,
amount
Inline
[
id,order_date,amount
1,03/01/2022,231.24
2,03/02/2022,567.28
3,03/03/2022,364.28
4,03/04/2022,575.76
5,03/05/2022,638.68
6,03/06/2022,785.38
7,03/07/2022,967.46
8,03/08/2022,287.67
9,03/09/2022,764.45
10,03/10/2022,875.43
11,03/11/2022,957.35
];
Résultats
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ce champ comme dimension :order_date.
Pour calculer la date de livraison, créez la mesure suivante : =day(order_date+5).
order_date |
=day(order_date+5) |
---|---|
03/11/2022 |
16 |
03/12/2022 |
17 |
03/13/2022 |
18 |
03/14/2022 |
19 |
03/15/2022 |
20 |
03/16/2022 |
21 |
03/17/2022 |
22 |
03/18/2022 |
23 |
03/19/2022 |
24 |
03/20/2022 |
25 |
03/21/2022 |
26 |
La fonction day() détermine correctement qu'une commande passée le 11 mars sera livrée le 16 en fonction d'une période de livraison de 5 jours.