# weekday Skript- och diagramfunktion

Denna funktion returnerar ett dualt värde med:

* Ett namn på en dag som definierat i miljövariabeln DayNames.
* Ett heltal mellan 0 och 6 som motsvarar den nominella veckodagen (0-6).

weekday(date [,first\_week\_day=0])

Returnerad datatyp: Dual

`weekday()`-funktionen avgör vilken veckodag ett datum inträffar. Det returnerar sedan ett strängvräde som representerar den dagen.

Diagram för `weekday()`-funktionen som returnerar namnet på dagen då ett datum infaller

Diagram för `weekday()`-funktionen som returnerar namnet på dagen då ett datum infaller

Diagram för `weekday()`weekday()-funktionen som returnerar namnet på dagen då ett datum infaller ![Diagram that shows the weekday() function returns the name of the day that a date falls on.](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-diagram1.png)

Resultatet returnerar nummervärdet som motsvarar den veckodagen (0–6), baserat på veckans första dag. Om den första dagen i veckan har satts till söndag returnerar en onsdag nummervärdet `3`. Den här startdagen bestäms antingen av systemvariabeln `FirstWeekDay` eller av funktionsparametern `first_week_day`.

Du kan använda det här talvärdet som en del av ett aritmetiskt uttryck. Till exempel, multiplicera det med `1` för att returnera själva värdet.

Diagram för `weekday()`-funktionen med nummervärdet för den dag som visas i stället för dagens namn

Diagram för `weekday()`-funktionen med nummervärdet för den dag som visas i stället för dagens namn

Diagram för `weekday()`weekday()-funktionen med nummervärdet för den dag som visas i stället för dagens namn ![Diagram that shows the weekday() function can return a number value that corresponds to the day which is identified.](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-diagram2.png)

Användning

Funktionen `weekday()` är användbar när du vill jämföra sammanställningar efter veckodagar. Om du exempelvis vill jämföra genomsnittlig försäljning av produkter efter veckodag.

Dessa dimensioner kan skapas i laddningsskriptet genom att använda funktionen för att skapa ett fält i en Master Calendar-tabell, eller skapas direkt i ett diagram som ett beräknat mått.

Relaterade ämnen

| Ämnen | Interaktion |
| --- | --- |
| [FirstWeekDay](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm) | Definierar startdagen för varje vecka. |

Argument

| Argument | Beskrivning |
| --- | --- |
| date | Det datum eller den tidsmarkör som ska utvärderas. |
| first\_week\_day | Anger dagen då veckan startar. Om utelämnat används värdet för variabeln FirstWeekDay.<br><br>[FirstWeekDay](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm) |

Du kan använda följande värden för att ställa in vilken dag veckan börjar i argumentet `first_week_day`:

first\_week\_day values

| Dag | värde |
| --- | --- |
| Måndag | 0 |
| Tisdag | 1 |
| Onsdag | 2 |
| Torsdag | 3 |
| Fredag | 4 |
| Lördag | 5 |
| Söndag | 6 |

## Lokala inställningar

Om inget annat anges använder exemplen i detta ämne följande datumformat: MM/DD/YYYY. Datumformatet anges i `SET DateFormat`-satsen i datainläsningsskriptet. Förvald datumformatering kan vara annorlunda i ditt system, på grund av dina regionala inställningar och andra faktorer. Du kan ändra formaten i exemplen nedan så att det passar dina krav. Eller så kan du ändra formaten i ditt laddningsskript så att de matchar dessa exempel.

Standardregionalinställningar i program baseras på de regionala systeminställningarna för datorn eller servern där Qlik Sense är installerad. Om Qlik Senseservern du ansluter till är inställd på Sverige så kommer Dataladdningsredigeraren att använda svenska regionala inställningar för datum, tid och valuta. Dessa regionala formatinställningar är inte relaterade till språket som visas i Qlik Sense användargränssnittet. Qlik Sense kommer att visas på samma språk som webbläsaren du använder.

Anteckning om informationOm inget annat sägs,är `FirstWeekDay` inställd till `0` i dessa exempel.

Exempel på funktioner

| Exempel | Resultat |
| --- | --- |
| `weekday('10/12/1971')` | Returnerar ' Tue' och 1. |
| `weekday('10/12/1971' , 6)` | Returnerar 'Tue' och 2.<br><br>I det här exemplet är söndag (`6`) den första dagen i veckan. |
| `SET FirstWeekDay=6;`<br><br>`...`<br><br>`weekday('10/12/1971')` | Returnerar 'Tue' och 2. |

## Exempel 1 – veckodagssträng

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

#### Laddningsskript och resultat

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* En datauppsättning som innehåller en uppsättning transaktioner för 2022 som laddas in i en tabell som heter ‘`Transactions`’.

* Systemvariabeln `FirstWeekDay` som är inställd till 6 (söndag).

* `DayNames`-variabeln som är inställd till att använda standardnamnen för dagar.

* En föregående laddning som innehåller `weekday()`-funktionen, som är satt som ‘`week_day`’-fältet och returnerar den veckodag då transaktionerna ägde rum.

Laddningsskript

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

Resultat

Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:

* `id`
* `date`
* `week_day`

Resultattabell

| Id | Datum | week\_day |
| --- | --- | --- |
| 8188 | 01/01/2022 | lör |
| 8189 | 01/02/2022 | sön |
| 8190 | 01/03/2022 | mån |
| 8191 | 01/04/2022 | tis |
| 8192 | 01/05/2022 | ons |
| 8193 | 01/06/2022 | tors |
| 8194 | 01/07/2022 | fre |

‘`week_day`’-fältet skapades i den föregående load-satsen genom att använda `weekday()`-funktionen och skicka datumfältet som funktionens argument.

`weekday()`-funktionen returnerar veckodagens strängvärde, det vill säga, returnerar namnet på veckodagen som ställs in med systemvariabeln `DayNames`.

Diagram för `weekday()`-funktionen som returnerar onsdag som veckodag för transaktion 8192

Diagram för `weekday()`-funktionen som returnerar onsdag som veckodag för transaktion 8192

Diagram för `weekday()`weekday()-funktionen som returnerar onsdag som veckodag för transaktion 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/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-examples1_and3-diagram.png)

Transaktion 8192 ägde rum den 5 januari. Systemvariabeln `FirstWeekDay` anger söndag som den första dagen i veckan. Funktionstransaktionen `weekday()` ägde rum på en onsdag och returnerar detta värde, i den förkortade formen från systemvariabeln `DayNames` i `week_day`-fältet.

Värdena i `week_day`-fältet är högerjusterade i kolumnen eftersom det finns ett dualt tal och textresultat för fältet (onsdagen den 3:e). För att konvertera fältvärdet till dess numeriska motsvarighet kan fältet inneslutas i `num()`-funktionen. I transaktion 8192 exempelvis skulle onsdagsvärdet konverteras till talet 3.

## Exempel 2 – first\_week\_day

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

#### Laddningsskript och resultat

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* En datauppsättning som innehåller transaktioner för 2022 som laddas i en tabell som heter ‘`Transactions`’.

* Systemvariabeln `FirstWeekDay` som är inställd till 6 (söndag).

* `DayNames`-variabeln som är inställd till att använda standardnamnen för dagar.

* En föregående laddning som innehåller `weekday()`-funktionen, som är satt till `week_day`-fältet och returnerar den veckodag då transaktionen ägde rum.

Laddningsskript

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

Resultat

Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:

* `id`
* `date`
* `week_day`

Resultattabell

| Id | Datum | week\_day |
| --- | --- | --- |
| 8188 | 01/01/2022 | lör |
| 8189 | 01/02/2022 | sön |
| 8190 | 01/03/2022 | mån |
| 8191 | 01/04/2022 | tis |
| 8192 | 01/05/2022 | ons |
| 8193 | 01/06/2022 | tors |
| 8194 | 01/07/2022 | fre |

Diagram för `weekday()`-funktionen som visar att onsdag har det duala värdet 1

Diagram för `weekday()`-funktionen som visar att onsdag har det duala värdet 1

Diagram för `weekday()`weekday()-funktionen som visar att onsdag har det duala värdet 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/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-example2-diagram.png)

Eftersom `first_week_day`-argumentet är satt till `1` i `weekday()`-funktionen är tisdag den första dagen i veckan. Därför kommer alla transaktioner som äger rum på en tisdag ha ett dualt numeriskt värde på `0`.

Transaktion 8192 ägde rum den 5 januari. `weekday()`-funktionen identifierar att detta är en onsdag, och uttrycket skulle alltså returnera det duala numeriska värdet `1`.

## Exempel 3 – Diagramobjektexempel

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

#### Laddningsskript och diagramuttryck

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* En datauppsättning som innehåller transaktioner för 2022 som laddas i en tabell som heter ‘`Transactions`’.

* Systemvariabeln `FirstWeekDay` som är inställd till `6` (söndag).

* `DayNames`-variabeln som är inställd till att använda standardnamnen för dagar.

I det här exemplet är dock datauppsättningen oförändrad och har lästs in i programmet. Beräkningen som identifierar veckodagsvärdet skapas som ett mått i ett diagram i applikationen.

Laddningsskript

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

Resultat

Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:

* `id`
* `date`

För att beräkna veckodagsvärdet skapar du följande mått:

* `=weekday(date)`

Resultattabell

| Id | Datum | =weekday(date) |
| --- | --- | --- |
| 8188 | 01/01/2022 | lör |
| 8189 | 01/02/2022 | sön |
| 8190 | 01/03/2022 | mån |
| 8191 | 01/04/2022 | tis |
| 8192 | 01/05/2022 | ons |
| 8193 | 01/06/2022 | tors |
| 8194 | 01/07/2022 | fre |

`=weekday(date)`-fältet skapades i diagrammet genom att använda `weekday()`-funktionen och skicka datumfältet som funktionens argument.

`weekday()`-funktionen returnerar veckodagens strängvärde, det vill säga, returnerar namnet på veckodagen som ställs in med systemvariabeln `DayNames`.

Diagram för `weekday()`-funktionen som returnerar onsdag som veckodag för transaktion 8192

Diagram för `weekday()`-funktionen som returnerar onsdag som veckodag för transaktion 8192

Diagram för `weekday()`weekday()-funktionen som returnerar onsdag som veckodag för transaktion 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/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-examples1_and3-diagram.png)

Transaktion 8192 ägde rum den 5 januari. Systemvariabeln `FirstWeekDay` anger söndag som den första dagen i veckan. Funktionstransaktionen `weekday()` ägde rum på en onsdag och returnerar detta värde, i den förkortade formen från systemvariabeln `DayNames` i `=weekday(date)`-fältet.

## Exempel 4 – Scenario

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

#### Laddningsskript och resultat

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* En datauppsättning som innehåller transaktioner för 2022 som laddas i en tabell som heter ‘`Transactions`’.

* Systemvariabeln `FirstWeekDay` som är inställd till `6` (söndag).

* `DayNames`-variabeln som är inställd till att använda standardnamnen för dagar.

Slutanvändaren vill ha ett diagram som visar den genomsnittliga försäljningen per veckodag för transaktionerna.

Laddningsskript

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

Resultat

Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:

* `=weekday(date)`
* `=avg(amount)`

Ange måttens Nummerformatering till Pengar.

Resultattabell

| weekday(date) | Avg(amount) |
| --- | --- |
| sön | $536.96 |
| mån | $500.80 |
| tis | $515.63 |
| ons | $509.21 |
| tors | $482.70 |
| fre | $441.33 |
| lör | $505.22 |