Nazwę dnia zdefiniowaną w zmiennej środowiskowej DayNames.
Wartość całkowitą od 0 do 6, która odpowiada nominalnemu dniu tygodnia (0-6).
Składnia:
weekday(date [,first_week_day=0])
Typ zwracanych danych: dual
Funkcja weekday() określa, w którym dniu tygodnia wypada dana data. Następnie zwraca łańcuch reprezentujący ten dzień.
Diagram funkcji weekday(), która zwraca nazwę dnia, w którym przypada określona data
W wyniku jest zwracana wartość liczbowa odpowiadająca temu dniu tygodnia (0-6), na podstawie pierwszego dnia tygodnia. Na przykład, jeśli pierwszy dzień tygodnia jest ustawiony na niedzielę, dla środy zostanie zwrócona wartość 3. Ten dzień początkowy jest określony przez zmienną systemową FirstWeekDay lub przez parametr funkcji first_week_day.
Tej wartości liczbowej można użyć jako elementu wyrażenia arytmetycznego. Na przykład pomnóż ją przez 1, aby zwrócić samą tę wartość.
Diagram funkcji weekday() z pokazaną wartością liczbową dnia zamiast nazwy dnia
Kiedy używać
Funkcja weekday() jest przydatna, gdy chcesz porównać agregacje według dnia tygodnia. Można jej na przykład użyć, aby porównać średnią sprzedaży produktów według dni tygodnia.
Te wymiary można utworzyć w skrypcie ładowania, używając tej funkcji w celu utworzenia pola w tabeli kalendarza głównego lub bezpośrednio na wykresie jako miary wyliczanej.
Aby ustawić dzień, w którym zaczyna się tydzień w argumencie first_week_day, możesz użyć następujących wartości:
first_week_day values
Dzień
Wartość
poniedziałek
0
wtorek
1
środa
2
czwartek
3
piątek
4
sobota
5
niedziela
6
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 aplikacji.
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.
InformacjaJeśli nie określono inaczej, w tych przykładach zmienna FirstWeekDay jest ustawiona na 0.
Przykłady funkcji
Przykład
Wynik
weekday('10/12/1971')
zwraca „Tue” i 1.
weekday('10/12/1971' , 6)
zwraca „True” i 2.
Na tym przykładzie pierwszym dniem tygodnia jest niedziela (6).
SET FirstWeekDay=6;
...
weekday('10/12/1971')
Zwraca „True” i 2.
Przykład 1 – Dzień tygodnia jako łańcuch
Przegląd
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.
Skrypt ładowania zawiera:
Zestaw danych zawierający zestaw transakcji za rok 2022, który jest ładowany do tabeli o nazwie „Transactions”.
Zmienna systemowa FirstWeekDay, która jest ustawiona na 6 (niedziela).
Zmienna DayNames, która jest ustawiona na używanie domyślnych nazw dni.
Ładowanie poprzedzające zawierające funkcję weekday(), która jest ustawiona jako pole week_day i zwraca dzień tygodnia, w którym odbyły się transakcje.
Skrypt ładowania
SET DateFormat='MM/DD/YYYY';
SET DayNames='Mon;Tue;Wed;Thu;Fri;Sat;Sun';
SET FirstWeekDay=6;
Transactions:
Load
*,
WeekDay(date) as week_day
;
Load
*
Inline
[
id,date,amount
8188,01/01/2022,37.23
8189,01/02/2022,17.17
8190,01/03/2022,88.27
8191,01/04/2022,57.42
8192,01/05/2022,53.80
8193,01/06/2022,82.06
8194,01/07/2022,40.39
];
Wyniki
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:
id
date
week_day
Tabela wynikowa
id
date
week_day
8188
01/01/2022
Sat
8189
01/02/2022
Nie
8190
01/03/2022
Pon
8191
01/04/2022
Wto
8192
01/05/2022
Śro
8193
01/06/2022
Thu
8194
01/07/2022
Fri
Pole „week_day” jest tworzone w instrukcji ładowania poprzedzającego przez użycie funkcji weekday() i przekazanie pola daty jako jej argumentu.
Funkcja weekday() zwraca wartość łańcuchową określającą dzień tygodnia, tzn. zwraca nazwę dnia tygodnia, która jest ustawiona przez zmienną systemową DayNames.
Diagram funkcji weekday(), która zwraca środę jako dzień tygodnia dla transakcji 8192
Transakcja 8192 miała miejsce 5 stycznia. Zmienna systemowa FirstWeekDay ustawia pierwszy dzień tygodnia na niedzielę. Transakcja funkcji weekday() miała miejsce w środę i funkcja ta zwraca tę wartość w skróconej formie zmiennej systemowej DayNames, w polu week_day.
Wartości w polu week_day są wyrównane w kolumnie do prawej, ponieważ to pole zawiera podwójny wynik złożony z liczby i tekstu (środa, 3). Aby zamienić wartość pola na liczbowy odpowiednik, pole to można umieścić w funkcji num(). Na przykład, w transakcji 8192 środa zostałaby zamieniona na liczbę 3
Przykład 2 — first_week_day
Przegląd
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.
Skrypt ładowania zawiera:
Zestaw danych zawierający zestaw transakcji za rok 2022, który jest ładowany do tabeli o nazwie „Transactions”.
Zmienna systemowa FirstWeekDay, która jest ustawiona na 6 (niedziela).
Zmienna DayNames, która jest ustawiona na używanie domyślnych nazw dni.
Ładowanie poprzedzające zawierające funkcję weekday(), która jest ustawiona jako pole week_day i zwraca dzień tygodnia, w którym odbyły się transakcje.
Skrypt ładowania
SET DateFormat='MM/DD/YYYY';
SET DayNames='Mon;Tue;Wed;Thu;Fri;Sat;Sun';
SET FirstWeekDay=6;
Transactions:
Load
*,
WeekDay(date,1) as week_day
;
Load
*
Inline
[
id,date,amount
8188,01/01/2022,37.23
8189,01/02/2022,17.17
8190,01/03/2022,88.27
8191,01/04/2022,57.42
8192,01/05/2022,53.80
8193,01/06/2022,82.06
8194,01/07/2022,40.39
];
Wyniki
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:
id
date
week_day
Tabela wynikowa
id
date
week_day
8188
01/01/2022
Sat
8189
01/02/2022
Nie
8190
01/03/2022
Pon
8191
01/04/2022
Wto
8192
01/05/2022
Śro
8193
01/06/2022
Thu
8194
01/07/2022
Fri
Diagram funkcji weekday(), który pokazuje, że środa ma wartość liczbową 1
Ponieważ funkcji weekday() przekazano wartość 1 jako argument first_week_day, pierwszym dniem tygodnia jest wtorek. W związku z tym wszystkie transakcje, które mają miejsce we wtorek będą miały podwójną wartość liczbową 0.
Transakcja 8192 miała miejsce 5 stycznia. Funkcja weekday() stwierdza, że jest to środa, więc wyrażenie zwróciłoby podwójną wartość liczbową 1.
Przykład 3 — przykład z obiektem wykresu
Przegląd
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.
Skrypt ładowania zawiera:
Zestaw danych zawierający zestaw transakcji za rok 2022, który jest ładowany do tabeli o nazwie „Transactions”.
Zmienna systemowa FirstWeekDay, która jest ustawiona na 6 (niedziela).
Zmienna DayNames, która jest ustawiona na używanie domyślnych nazw dni.
Jednak w tym przykładzie zestaw danych pozostaje bez zmian i jest ładowany do aplikacji. Obliczenia identyfikujące wartość dnia tygodnia są utworzone jako miara na wykresie w aplikacji.
Skrypt ładowania
SET DateFormat='MM/DD/YYYY';
SET DayNames='Mon;Tue;Wed;Thu;Fri;Sat;Sun';
SET FirstWeekDay=6;
Transactions:
Load
*
Inline
[
id,date,amount
8188,01/01/2022,37.23
8189,01/02/2022,17.17
8190,01/03/2022,88.27
8191,01/04/2022,57.42
8192,01/05/2022,53.80
8193,01/06/2022,82.06
8194,01/07/2022,40.39
];
Wyniki
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:
id
date
Aby obliczyć wartość dnia tygodnia, należy utworzyć następującą miarę:
=weekday(date)
Tabela wynikowa
id
date
=weekday(date)
8188
01/01/2022
Sat
8189
01/02/2022
Nie
8190
01/03/2022
Pon
8191
01/04/2022
Wto
8192
01/05/2022
Śro
8193
01/06/2022
Thu
8194
01/07/2022
Fri
Miara =weekday(date) jest tworzona na wykresie przy użyciu funkcji weekday(), której jako argument przekazano pole daty.
Funkcja weekday() zwraca wartość łańcuchową określającą dzień tygodnia, tzn. zwraca nazwę dnia tygodnia, która jest ustawiona przez zmienną systemową DayNames.
Diagram funkcji weekday(), która zwraca środę jako dzień tygodnia dla transakcji 8192
Transakcja 8192 miała miejsce 5 stycznia. Zmienna systemowa FirstWeekDay ustawia pierwszy dzień tygodnia na niedzielę. Transakcja funkcji weekday() miała miejsce w środę i funkcja ta zwraca tę wartość w skróconej formie zmiennej systemowej DayNames, w polu =weekday(date).
Przykład 4 — Scenariusz
Przegląd
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.
Skrypt ładowania zawiera:
Zestaw danych zawierający zestaw transakcji za rok 2022, który jest ładowany do tabeli o nazwie „Transactions”.
Zmienna systemowa FirstWeekDay, która jest ustawiona na 6 (niedziela).
Zmienna DayNames, która jest ustawiona na używanie domyślnych nazw dni.
Użytkownik końcowy chciałby otrzymać wykres przedstawiający średnią sprzedaż według dnia tygodnia dla transakcji.
Skrypt ładowania
SET DateFormat='MM/DD/YYYY';
SET DayNames='Mon;Tue;Wed;Thu;Fri;Sat;Sun';
SET FirstWeekDay=6;
Transactions:
LOAD
RecNo() AS id,
MakeDate(2022, 1, Ceil(Rand() * 31)) as date,
Rand() * 1000 AS amount
Autogenerate(1000);
Wyniki
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:
=weekday(date)
=avg(amount)
Ustaw Formatowanie liczb miary na Waluta.
Tabela wynikowa
=weekday(date)
Avg(amount)
Nie
$536.96
Pon
$500.80
Wto
$515.63
Śro
$509.21
Thu
$482.70
Fri
$441.33
Sat
$505.22
Variable
A variable in Qlik Sense is a container storing a static value or a calculation, for example a numeric or alphanumeric value.
A dimension is an entity used to categorize data in a chart. For example, the slices in a pie chart or the bars of a bar chart represent individual values in a dimension. Dimensions are often a single field with discrete values, but can also be calculated in an expression.
A dimension is a dataset in a data mart that forms part of the star schema. Dimension datasets hold the descriptive information for all related fields that are included in the fact table’s records. A few common examples of dimension datasets are Customer and Product. Since the data in a dimension dataset is often denormalized, dimension datasets have a large number of columns.
The load script is a sequence of statements that defines what data to load and how to link the different loaded tables. It can be generated with the Data manager, or with the Data load editor, where it also can be viewed and edited.
A field is a data asset containing values, loaded from a data source. At a basic level, a field corresponds to a column in a table. Fields are used to create dimensions and measures in visualizations.
Charts are objects where calculations, aggregations, and groupings can be made. Graphical visualizations, such as bar charts and pie charts are common examples, but also non-graphical objects such as pivot tables are charts.
A chart consists of dimensions and measures, where the measures are calculated once per dimensional value. If the chart contains multiple dimensions, the measures are calculated once per combination of dimensional values.
A measure is a calculation base on one ore more aggregations. For example, the sum of sales is a single aggregation, while the sum of sales divided by the count of customers is a measure based on two aggregations.
The term dataset is usually synonymous with table. It can refer to the original source table, the table after undergoing transformations, or the fact and dimension tables in a data mart.
A preceding load is a script construct that allows you to load from the following LOAD or SELECT statement without specifying that source. Preceding loads are often faster than resident loads.
A Qlik Sense or QlikView app: Apps are task-specific, purpose-built applications. Apps contain data loaded from data sources that is interpreted through visualizations.
The Qlik Sense Mobile app: A mobile app for iOS and Android devices. In the mobile app, you connect to and interact with your cloud data. You can work with your available apps.