# day - Skript- und Diagrammfunktion

Diese Funktion liefert den Tag als ganze Zahl, wenn expression entsprechend dem Standardformat als Datum interpretiert wird.

Die Funktion gibt den Tag des Monats für eine bestimmtes Datum zurück. Sie wird gewöhnlich verwendet, um ein Tagesfeld als Teil einer Kalenderdimension abzuleiten.

Syntax:

day(expression)

Rückgabe Datentyp: ganze Zahl

Funktionsbeispiele

| Beispiel | Ergebnis |
| --- | --- |
| `day(<br>1971-10-12 )` | liefert 12 |
| `day(<br>35648 )` | liefert 6, da 35648 = 1997-08-06 |

## Beispiel 1 – DateFormat-Datensatz (Skript)

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/day.htm)

#### Ladeskript und Ergebnisse

Überblick

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.

Das Ladeskript umfasst:

* Einen Datensatz mit Datumsangaben mit dem Namen `Master_Calendar`. Die Systemvariable `DateFormat` wird auf TT/MM/JJJJ festgelegt.

* Einen vorangehenden load-Befehl, mit dem unter Verwendung der Funktion `day()` ein zusätzliches Feld mit dem Namen `day_of_month` erstellt wird.

* Ein weiteres Feld mit dem Namen `long_date`, das die Funktion `date()` verwendet, um den vollständigen Namen des Monats auszudrücken.

Ladeskript

```

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						
];
```

Ergebnisse

Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:

* `date`

* `long_date`

* `day_of_month`

Ergebnistabelle

| date | long\_date | day\_of\_month |
| --- | --- | --- |
| 03/11/2022 | 11-March- 2022 | 11 |
| 03/12/2022 | 12-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 |

Der Tag des Monats wird korrekt von der Funktion `day()` im Skript ausgewertet.

## Beispiel 2 – ANSI-Datum (Skript)

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/day.htm)

#### Ladeskript und Ergebnisse

Überblick

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.

Das Ladeskript umfasst:

* Einen Datensatz mit Datumsangaben mit dem Namen `Master_Calendar`. Die DateFormat-Systemvariable TT/MM/JJJJ wird verwendet. Die im Datensatz enthaltenen Datumsangaben weisen aber das ANSI-Standarddatumsformat auf.

* Einen vorangehenden load-Befehl, mit dem ein zusätzliches Feld mit dem Namen `day_of_month` erstellt wird, unter Verwendung der Funktion `date()`.

* Ein weiteres Feld mit dem Namen `long_date`, das die Funktion `date()` verwendet, um das Datum mit dem vollständigen Namen des Monats auszudrücken.

Ladeskript

```

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
 ]; 
```

Ergebnisse

Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:

* `date`

* `long_date`

* `day_of_month`

Ergebnistabelle

| date | long\_date | day\_of\_month |
| --- | --- | --- |
| 03/11/2022 | 11-March- 2022 | 11 |
| 03/12/2022 | 12-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 |

Der Tag des Monats wird korrekt von der Funktion `day()` im Skript ausgewertet.

## Beispiel 3 – Unformatiertes Datum (Skript)

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/day.htm)

#### Ladeskript und Ergebnisse

Überblick

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.

Das Ladeskript umfasst:

* Einen Datensatz mit Datumsangaben mit dem Namen `Master_Calendar`. Die `  DateFormat `-Systemvariable TT/MM/JJJJ wird verwendet.

* Einen vorangehenden load-Befehl, mit dem ein zusätzliches Feld mit dem Namen `day_of_month` erstellt wird, unter Verwendung der Funktion `day()`.

* Das ursprüngliche unformatierte Datum mit dem Namen `unformatted_date`.

* Ein weiteres Feld mit dem Namen `long_date`, das `date()` verwendet, wird genutzt, um das numerische Datum in ein formatiertes Datumsfeld zu konvertieren.

Ladeskript

```

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 
]; 

```

Ergebnisse

Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:

* `unformatted_date`

* `long_date`

* `day_of_month`

Ergebnistabelle

| 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 |

Der Tag des Monats wird korrekt von der Funktion `day()` im Skript ausgewertet.

## Beispiel 4 – Berechnen des Ablaufmonats (Diagramm)

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/day.htm)

#### Ladeskript und Diagrammformel

Überblick

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.

Das Ladeskript umfasst:

* Ein Datensatz der im März aufgegebenen Bestellungen mit dem Namen `Orders`. Die Tabelle enthält drei Felder:

  * id

  * order\_date

  * amount

Ladeskript

```

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 
]; 

```

Ergebnisse

Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie dieses Feld als Dimension hinzu:`order_date`.

Erstellen Sie die folgende Kennzahl, um das Lieferdatum zu berechnen: `=day(order_date+5)`.

Ergebnistabelle

| 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 |

Die Funktion `day()` berechnet korrekt, dass eine am 11. März aufgegebene Bestellung aufgrund des 5-Tages-Lieferzeitraums am 16. geliefert wird.

## Weitere Informationen

* [Laden von Daten aus bereits geladenen Tabellen](https://help.qlik.com/de-DE/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/load-data-from-previously-loaded-table.htm)