Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Извличане на номера на седмицата от дата в SQL Server (T-SQL)

Можете да използвате функцията T-SQL DATEPART() за да върнете номера на седмицата от дата в SQL Server.

Под „номер на седмицата“ имам предвид номера на седмицата в рамките на годината от посочената дата.

Пример

За да върнете номера на седмицата, използвайте week като първи аргумент на DATEPART() функция.

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

Резултат:

30

Алтернативни аргументи

Като алтернатива можете да използвате wk или ww като първи аргумент, за да направите същото.

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

Резултат:

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

Ще забележите, че номерът на седмицата в тези резултати е различен от номера на седмицата в предишния пример, въпреки че и двата примера са използвали 20 юли като свои дати. Това може да се очаква.

Двата примера използват различна година. Броят на седмицата може да бъде повлиян от годината. С други думи, само защото 20 юли е 30-та седмица в една година, това не означава, че ще бъде 30-та седмица всяка година. Просто нещо, за което трябва да имате предвид.

Номер на седмицата по ISO

Можете също да върнете номера на ISO седмицата от дата, като използвате iso_week аргумент. ISO седмиците започват в понеделник и първата седмица на годината съдържа 4 януари на същата година.

Следователно е възможно датите от началото на януари да са част от 52-ата или 53-та седмица на предходната година, а датите от края на декември да са част от първата седмица на следващата година.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. pyodbc не може да се свърже с базата данни

  2. Инструкцията ALTER TABLE е в конфликт с ограничението CHECK в SQL Server - SQL Server / TSQL Урок, част 89

  3. Заявката е неуспешна с HTTP състояние 401:Неупълномощено В SSRS

  4. Примери за форматиране на „datetimeoffset“ в SQL Server с помощта на стандартни форматни низове (T-SQL)

  5. Как да намеря зависимости от външни ключове в SQL Server?