Ta funkcja zwraca liczbę całkowitą reprezentującą rok, gdy wyrażenie expression jest interpretowane jako data zgodnie ze standardową interpretacją liczb.
Składnia:
year(expression)
Typ zwracanych danych: integer
Funkcja year() jest dostępna zarówno jako skrypt, jak i funkcja wykresu. Funkcja ta zwraca rok dla określonej daty. Jest używana do tworzenia pola roku jako wymiaru w kalendarzu głównym.
Kiedy używać
Funkcja year() jest przydatna, gdy chcesz porównać agregacje w ujęciu rocznym. Można jej na przykład użyć, aby wyświetlić całkowitą sprzedaż produktów w ujęciu rocznym.
Te wymiary można utworzyć w skrypcie ładowania za pomocą funkcji tworzenia pola w tabeli kalendarza głównego. Ewentualnie można jej użyć bezpośrednio na wykresie jako wymiaru wyliczanego.
Przykłady funkcji
Przykład
Wynik
year(
'2012-10-12' )
zwraca 2012
year(
'35648' )
zwraca 1997, ponieważ 35648 = 1997-08-06
Ustawienia regionalne
Jeżeli nie podano inaczej, w przykładach w tym temacie stosowany jest następujący format daty: MM/DD/RRRR. Format daty jest określony w instrukcji SET DateFormat w skrypcie ładowania danych. Domyślny format daty w Twoim systemie może być inny ze względu na ustawienia regionalne i inne czynniki. Formaty zastosowane w przykładach można zmienić, aby dostosować je do własnych wymagań. Zamiast tego można też zmienić formaty w skrypcie ładowania, aby pasowały do tych przykładów. Więcej informacji można znaleźć w temacie Modyfikowanie ustawień regionalnych na potrzeby aplikacji i skryptów.
Domyślne ustawienia regionalne w aplikacjach są oparte na profilu użytkownika. Te ustawienia regionalne nie są związane z językiem wyświetlanym w interfejsie użytkownika Qlik Cloud. Interfejs Qlik Cloud będzie wyświetlany w tym samym języku co używana przeglądarka.
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.
Skrypt ładowania zawiera:
Zestaw danych zawierający daty, który jest załadowany do tabeli o nazwie Master Calendar.
Została użyta domyślna zmienna systemowa DateFormat MM/DD/RRRR.
Ładowanie poprzedzające, tworzące dodatkowe pole year przy użyciu funkcji year().
Skrypt ładowania
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
];
Wyniki
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:
date
year
Tabela wynikowa
date
rok
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
Przykład 2 – Daty ANSI
Przegląd
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.
Skrypt ładowania zawiera:
Zestaw danych zawierający daty, który jest załadowany do tabeli o nazwie Master Calendar.
Została użyta domyślna zmienna systemowa DateFormat MM/DD/RRRR. Natomiast daty w zbiorze danych są w standardowym formacie daty ANSI.
Ładowanie poprzedzające, tworzące dodatkowe pole (o nazwie year) przy użyciu funkcji year().
Skrypt ładowania
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
];
Wyniki
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:
date
year
Tabela wynikowa
date
rok
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
Przykład 3 – Niesformatowane daty
Przegląd
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.
Skrypt ładowania zawiera:
Zestaw danych zawierający daty w formacie numerycznym, który jest załadowany do tabeli o nazwie Master Calendar.
Została użyta domyślna zmienna systemowa DateFormat MM/DD/RRRR.
Ładowanie poprzedzające, tworzące dodatkowe pole (year) przy użyciu funkcji year().
Oryginalna niesformatowana data zostaje załadowana i nazwana unformatted_date. Ponadto, dla jasności, zostało użyte dodatkowe pole, o nazwie long_date, które służy do konwersji numerycznej daty na sformatowane pole daty za pomocą funkcji date().
Skrypt ładowania
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
];
Wyniki
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:
unformatted_date
long_date
year
Tabela wynikowa
unformatted_date
long_date
rok
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
Przykład 4 — przykład z obiektem wykresu
Przegląd
Otwórz Edytor ładowania danych i dodaj poniższy skrypt ładowania do nowej karty.
W tym przykładzie zestaw danych złożonych zamówień jest ładowany do tabeli o nazwie Sales. Tabela zawiera trzy pola:
id
sales_date
amount
Sprzedawane produkty są objęte dwuletnią gwarancją od daty sprzedaży. Zadanie dotyczy utworzenia na wykresie miary określającej rok zakończenia okresu każdej gwarancji.
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj to pole jako wymiar: sales_date.
Utwórz następującą miarę:
=year(sales_date+365*2)
Tabela wynikowa
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
Wyniki tej miary można zobaczyć w powyższej tabeli. Aby dodać dwa lata do daty, należy pomnożyć 365 przez 2 i dodać wynik do daty sprzedaży. W związku z tym, w przypadku produktu sprzedanego w 2020 roku termin zakończenia wypada w 2022 roku.
Czy ta strona była pomocna?
Jeżeli natkniesz się na problemy z tą stroną lub jej zawartością — literówkę, brakujący krok lub błąd techniczny — daj nam znać, co możemy poprawić!