sql >> Database >  >> RDS >> Sqlserver

Extraheer het weeknummer van een datum in SQL Server (T-SQL)

U kunt de T-SQL-functie DATEPART() . gebruiken om het weeknummer van een datum in SQL Server te retourneren.

Met "weeknummer" bedoel ik het weeknummer binnen het jaar van de opgegeven datum.

Voorbeeld

Gebruik week . om het weeknummer terug te geven als het eerste argument van de DATEPART() functie.

DECLARE @date date = '2020-07-20';
SELECT DATEPART(week, @date);

Resultaat:

30

Alternatieve argumenten

Als alternatief kunt u wk . gebruiken of ww als het eerste argument om hetzelfde te doen.

DECLARE @date date = '2024-07-20';
SELECT 
    DATEPART(week, @date) AS week,
    DATEPART(wk, @date) AS wk,
    DATEPART(ww, @date) AS ww;

Resultaat:

+--------+------+------+
 | week   | wk   | ww   |
 |--------+------+------|
 | 29     | 29   | 29   |
 +--------+------+------+  

U zult zien dat het weeknummer in deze resultaten anders is dan het weeknummer in het vorige voorbeeld, ook al gebruikten beide voorbeelden 20 juli als datum. Dit is te verwachten.

De twee voorbeelden gebruiken een ander jaartal. Het weeknummer kan worden beïnvloed door het jaartal. Dus met andere woorden, alleen omdat 20 juli de 30e week in een jaar is, betekent dit niet dat het elk jaar de 30e week zal zijn. Gewoon iets om rekening mee te houden.

ISO-weeknummer

U kunt ook het ISO-weeknummer van een datum retourneren met de iso_week argument. ISO-weken beginnen op maandag en de eerste week van een jaar bevat 4 januari van dat jaar.

Daarom is het mogelijk dat data van begin januari deel uitmaken van de 52e of 53e week van het voorgaande jaar en data van eind december tot de eerste week van het volgende jaar.


  1. Hoe importeer je een groot MS SQL .sql-bestand?

  2. Microsoft Access is NIET dood en VBA ook niet

  3. Beperk de rijen die in een SQL Server-query worden geretourneerd met behulp van de TOP-clausule

  4. Het belang van het selecteren van de juiste Azure VM-grootte