# year Skript- und Diagrammfunktion

Diese Funktion liefert das Jahr als ganze Zahl, wenn expression entsprechend der Standardinterpretation als Datum interpretiert wird.

Syntax:

year(expression)

Rückgabe Datentyp: ganze Zahl

Die Funktion `year()` ist sowohl als Skript als auch als Diagrammfunktion verfügbar. Die Funktion gibt das Jahr für eine bestimmtes Datum zurück. Sie wird gewöhnlich verwendet, um ein Jahresfeld als Dimension in einem Master-Kalender zu erstellen.

## Verwendung

Die Funktion `year()` ist nützlich, wenn Sie Aggregierungen nach Jahr vergleichen möchten. Sie kann beispielsweise verwendet werden, wenn Sie den Gesamtumsatz von Produkten nach Jahr anzeigen möchten.

Diese Dimensionen können im Ladeskript erstellt werden, indem die Funktion verwendet wird, um ein Feld in einer Master-Kalender-Tabelle zu erstellen. Alternativ kann sie direkt als berechnete Dimension in einem Diagramm verwendet werden.

Funktionsbeispiele

| Beispiel | Ergebnis |
| --- | --- |
| `year(<br>'2012-10-12' )` | liefert 2012 |
| `year(<br>'35648' )` | liefert 1997, da 35648 = 1997-08-06 |

## Regionaleinstellungen

Sofern nicht anders angegeben, verwenden die Beispiele in diesem Thema das folgende Datumsformat: MM/TT/JJJJ. Das Datumsformat wird in der Anweisung `SET DateFormat` in Ihrem Datenladeskript angegeben. Das Standarddatumsformat in Ihrem System kann aufgrund Ihrer regionalen Einstellungen und anderer Faktoren abweichen. Sie können die Formate in den Beispielen unten Ihren Anforderungen entsprechend ändern. Sie können auch die Formate in Ihrem Ladeskript entsprechend den Beispielen ändern.

Standardmäßige regionale Einstellungen in Anwendungen basieren auf den regionalen Systemeinstellungen des Computers oder Servers, auf dem Qlik Sense installiert ist. Wenn der Qlik Sense-Server, auf den Sie zugreifen, auf Schweden festgelegt ist, verwendet der Dateneditor die schwedischen regionalen Einstellungen für Datums-, Zeit- und Währungsangaben. Diese regionalen Formateinstellungen hängen nicht mit der Sprache zusammen, die in der Qlik Sense Benutzeroberfläche angezeigt wird. Qlik Sense wird in derselben Sprache angezeigt wie der von Ihnen verwendete Browser.

## Beispiel 1 – DateFormat-Datensatz (Skript)

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

#### Ladeskript und Ergebnisse

Übersicht

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in einen neuen Abschnitt ein.

Das Ladeskript umfasst:

* Datensatz mit Datumsangaben, der in eine Tabelle mit dem Namen `Master Calendar` geladen wird

* Die `DateFormat`-Standardsystemvariable MM/TT/JJJJ wird verwendet.

* Ein vorangehender load-Befehl, der zum Erstellen eines zusätzlichen Feldes mit dem Namen `year` unter Verwendung der Funktion `year()` verwendet wird.

Ladeskript

```
SET DateFormat='MM/DD/YYYY';

Master_Calendar:

    Load
        date,
        year(date) as year
        ;
Load
date
Inline 
[
date
12/28/2020
12/29/2020
12/30/2020
12/31/2020
01/01/2021
01/02/2021
01/03/2021
01/04/2021
01/05/2021
01/06/2021
01/07/2021
];
```

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`

* `year`

Ergebnistabelle

| Datum | Jahr |
| --- | --- |
| 12/28/2020 | 2020 |
| 12/29/2020 | 2020 |
| 12/30/2020 | 2020 |
| 12/31/2020 | 2020 |
| 01/01/2021 | 2021 |
| 01/02/2021 | 2021 |
| 01/03/2021 | 2021 |
| 01/04/2021 | 2021 |
| 01/05/2021 | 2021 |
| 01/06/2021 | 2021 |
| 01/07/2021 | 2021 |

## Beispiel 2 – ANSI-Datum

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

#### Ladeskript und Ergebnisse

Übersicht

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in einen neuen Abschnitt ein.

Das Ladeskript umfasst:

* Datensatz mit Datumsangaben, der in eine Tabelle mit dem Namen `Master Calendar` geladen wird

* Die `DateFormat`-Standardsystemvariable (MM/TT/JJJJ) wird verwendet. Die im Datensatz enthaltenen Datumsangaben weisen aber das ANSI-Standarddatumsformat auf.

* Eine vorangehende load-Anweisung, die zum Erstellen eines zusätzlichen Feldes mit dem Namen `year` unter Verwendung der Funktion `year()` verwendet wird

Ladeskript

```
SET DateFormat='MM/DD/YYYY';

Master_Calendar:
    Load
        date,
        year(date) as year
        ;
Load
date
Inline 
[
date
2020-12-28
2020-12-29
2020-12-30
2020-12-31
2021-01-01
2021-01-02
2021-01-03
2021-01-04
2021-01-05
2021-01-06
2021-01-07
];
```

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`

* `year`

Ergebnistabelle

| Datum | Jahr |
| --- | --- |
| 2020-12-28 | 2020 |
| 2020-12-29 | 2020 |
| 2020-12-30 | 2020 |
| 2020-12-31 | 2020 |
| 2021-01-01 | 2021 |
| 2021-01-02 | 2021 |
| 2021-01-03 | 2021 |
| 2021-01-04 | 2021 |
| 2021-01-05 | 2021 |
| 2021-01-06 | 2021 |
| 2021-01-07 | 2021 |

## Beispiel 3 – Unformatiertes Datum

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

#### Ladeskript und Ergebnisse

Übersicht

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in einen neuen Abschnitt ein.

Das Ladeskript umfasst:

* Datensatz mit Datumsangaben im numerischen Format, der in eine Tabelle mit dem Namen `Master Calendar` geladen wird

* Die `DateFormat`-Standardsystemvariable (MM/TT/JJJJ) wird verwendet.

* Eine vorangehende load-Anweisung, die zum Erstellen eines zusätzlichen Feldes mit dem Namen `year` unter Verwendung der Funktion `year()` verwendet wird

Das ursprüngliche unformatierte Datum wird mit dem Namen `unformatted_date` geladen, und für mehr Klarheit wird ein weiteres Feld mit dem Namen `long_date` verwendet, um das numerische Datum anhand der Funktion `date()` in ein formatiertes Datumsfeld zu konvertieren.

Ladeskript

```
SET DateFormat='MM/DD/YYYY';

Master_Calendar:
    Load
        unformatted_date,
        date(unformatted_date) as long_date,
        year(unformatted_date) as year
        ;
Load
unformatted_date
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`

* `year`

Ergebnistabelle

| unformatted\_date | long\_date | Jahr |
| --- | --- | --- |
| 44868 | 11/03/2022 | 2022 |
| 44898 | 12/03/2022 | 2022 |
| 44928 | 01/02/2023 | 2023 |
| 44958 | 02/01/2023 | 2023 |
| 44988 | 03/03/2023 | 2023 |
| 45008 | 03/23/2023 | 2023 |
| 45018 | 04/02/2023 | 2023 |
| 45038 | 04/22/2023 | 2023 |
| 45048 | 05/02/2023 | 2023 |
| 45068 | 05/22/2023 | 2023 |
| 45078 | 06/01/2023 | 2023 |

## Beispiel 4 – Diagrammobjektbeispiel

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

#### Ladeskript und Diagrammformel

Übersicht

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

In diesem Beispiel wird ein Datensatz mit Bestellungen in eine Tabelle namens „Sales“ geladen. Die Tabelle enthält drei Felder:

* id

* sales\_date

* amount

Garantien für Produktverkäufe sind für zwei Jahre ab dem Verkaufsdatum gültig. Die Aufgabe besteht darin, eine Kennzahl in einem Diagramm zu erstellen, um das Jahr zu bestimmen, in dem jede Garantie abläuft.

Ladeskript

```
Sales:
Load
id,
sales_date,
amount
Inline 
[
id,sales_date,amount
1,12/28/2020,231.24,
2,12/29/2020,567.28,
3,12/30/2020,364.28,
4,12/31/2020,575.76,
5,01/01/2021,638.68,
6,01/02/2021,785.38,
7,01/03/2021,967.46,
8,01/04/2021,287.67
9,01/05/2021,764.45,
10,01/06/2021,875.43,
11,01/07/2021,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: sales\_date.

Erstellen Sie die folgende Kennzahl:

=year(sales\_date+365\*2)

Ergebnistabelle

| sales\_date | =year(sales\_date+365\*2) |
| --- | --- |
| 12/28/2020 | 2022 |
| 12/29/2020 | 2022 |
| 12/30/2020 | 2022 |
| 12/31/2020 | 2022 |
| 01/01/2021 | 2023 |
| 01/02/2021 | 2023 |
| 01/03/2021 | 2023 |
| 01/04/2021 | 2023 |
| 01/05/2021 | 2023 |
| 01/06/2021 | 2023 |
| 01/07/2021 | 2023 |

Die Ergebnisse dieser Kennzahl sind in der obigen Tabelle dargestellt. Um zwei Jahre zu einem Datum hinzuzufügen, multiplizieren Sie 365 mit 2 und addieren Sie das Ergebnis zum Verkaufsdatum. Daher ist das Ablaufjahr für Verkäufe, die im Jahr 2020 stattfanden, das Jahr 2022.