# weekday funkcja skryptu i funkcja wykresu

Ta funkcja zwraca wartość podwójną:

* Nazwę dnia zdefiniowaną w zmiennej środowiskowej DayNames.
* Wartość całkowitą od 0 do 6, która odpowiada nominalnemu dniu tygodnia (0-6).

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

Diagram funkcji `weekday()`, która zwraca nazwę dnia, w którym przypada określona data

Diagram funkcji `weekday()`weekday(), która zwraca nazwę dnia, w którym przypada określona data ![Diagram that shows the weekday() function returns the name of the day that a date falls on.](https://help.qlik.com/pl-PL/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-diagram1.png)

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 systemową zmienną `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

Diagram funkcji `weekday()` z pokazaną wartością liczbową dnia zamiast nazwy dnia

Diagram funkcji `weekday()`weekday() z pokazaną wartością liczbową dnia zamiast nazwy dnia ![Diagram that shows the weekday() function can return a number value that corresponds to the day which is identified.](https://help.qlik.com/pl-PL/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-diagram2.png)

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 funkcji w celu utworzenia pola w tabeli kalendarza głównego; lub utworzyć bezpośrednio na wykresie jako wyliczanej miary.

Tematy pokrewne

| Tematy | Interakcja |
| --- | --- |
| [FirstWeekDay](https://help.qlik.com/pl-PL/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm) | Definiuje dzień rozpoczęcia każdego tygodnia. |

Argumenty

| Argument | Opis |
| --- | --- |
| date | Data lub znacznik czasu do oszacowania. |
| first\_week\_day | Określa dzień początku tygodnia. Jeśli ten argument zostanie pominięty, wówczas zostanie użyta wartość zmiennej FirstWeekDay.<br><br>[FirstWeekDay](https://help.qlik.com/pl-PL/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm) |

Aby ustawić dzień, w którym zaczyna się tydzień w argumencie `first_week_day`, możesz użyć następujących wartości:

Wartości first\_week\_day

| 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/YYYY. 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.

Domyślne ustawienia regionalne w aplikacjach są oparte na regionalnych ustawieniach systemu komputera lub serwera, na którym zainstalowano Qlik Sense. Jeśli serwer Qlik Sense, do którego uzyskujesz dostęp, jest ustawiony na Szwecję, Edytor ładowania danych użyje szwedzkich ustawień regionalnych dla dat, godziny i waluty. Te ustawienia regionalne nie są związane z językiem wyświetlanym w interfejsie użytkownika Qlik Sense. Qlik Sense będzie wyświetlane w tym samym języku co używana przez Ciebie 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.<br><br>Na tym przykładzie pierwszym dniem tygodnia jest niedziela (`6`). |
| `SET FirstWeekDay=6;`<br><br>`...`<br><br>`weekday('10/12/1971')` | Zwraca „True” i 2. |

## Przykład 1 – Dzień tygodnia jako łańcuch

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

#### Skrypt ładowania i wyniki

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

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

| Identyfikator | Data | week\_day |
| --- | --- | --- |
| 8188 | 01/01/2022 | Sob |
| 8189 | 01/02/2022 | Nie |
| 8190 | 01/03/2022 | Pon |
| 8191 | 01/04/2022 | Wto |
| 8192 | 01/05/2022 | Śro |
| 8193 | 01/06/2022 | Czw |
| 8194 | 01/07/2022 | Fri |

Pole ‘`week_day`’ jest tworzone w poprzedzającej instrukcji LOAD 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

Diagram funkcji `weekday()`, która zwraca środę jako dzień tygodnia dla transakcji 8192

Diagram funkcji `weekday()`weekday(), która zwraca środę jako dzień tygodnia dla transakcji 8192 ![Diagram that shows the weekday() function returns Wednesday as the weekday for transaction 8192. The first day of the week is set as Sunday.](https://help.qlik.com/pl-PL/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-examples1_and3-diagram.png)

Transakcja 8192 miała miejsce 5 stycznia. Zmienna systemowa `FirstWeekDay` ustawia pierwszy dzień tygodnia jako 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

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

#### Skrypt ładowania i wyniki

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

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

| Identyfikator | Data | week\_day |
| --- | --- | --- |
| 8188 | 01/01/2022 | Sob |
| 8189 | 01/02/2022 | Nie |
| 8190 | 01/03/2022 | Pon |
| 8191 | 01/04/2022 | Wto |
| 8192 | 01/05/2022 | Śro |
| 8193 | 01/06/2022 | Czw |
| 8194 | 01/07/2022 | Fri |

Diagram funkcji `weekday()`, który pokazuje, że środa ma wartość liczbową 1

Diagram funkcji `weekday()`, który pokazuje, że środa ma wartość liczbową 1

Diagram funkcji `weekday()`weekday(), który pokazuje, że środa ma wartość liczbową 1 ![Diagram that shows that January 5, 2022 falls on a Wednesday and that Wednesday has teh number value of 1 because the first day of the week is set as Tuesday.](https://help.qlik.com/pl-PL/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-example2-diagram.png)

Ponieważ funkcji `first_week_day` przekazano wartość `1` jako argument `weekday()`, 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

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

#### Skrypt ładowania i wyrażenie wykresu

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

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 zbiór 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

| Identyfikator | Data | =weekday(date) |
| --- | --- | --- |
| 8188 | 01/01/2022 | Sob |
| 8189 | 01/02/2022 | Nie |
| 8190 | 01/03/2022 | Pon |
| 8191 | 01/04/2022 | Wto |
| 8192 | 01/05/2022 | Śro |
| 8193 | 01/06/2022 | Czw |
| 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

Diagram funkcji `weekday()`, która zwraca środę jako dzień tygodnia dla transakcji 8192

Diagram funkcji `weekday()`weekday(), która zwraca środę jako dzień tygodnia dla transakcji 8192 ![Diagram that shows the weekday() function returns Wednesday as the weekday for transaction 8192. The first day of the week is set as Sunday.](https://help.qlik.com/pl-PL/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-examples1_and3-diagram.png)

Transakcja 8192 miała miejsce 5 stycznia. Zmienna systemowa `FirstWeekDay` ustawia pierwszy dzień tygodnia jako 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 — zastosowanie

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

#### Skrypt ładowania i wyniki

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

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 |
| Czw | $482.70 |
| Fri | $441.33 |
| Sob | $505.22 |