В MySQL можете да използвате WEEKOFYEAR()
функция за връщане на календарната седмица за дадена дата. Просто посочете датата като аргумент и функцията ще върне календарната седмица като число в диапазона от 1 до 53.
Синтаксис
Синтаксисът е така:
WEEKOFYEAR(date)
Където date
е датата, от която искате да се върне календарната седмица.
Пример 1 – Основна употреба
Ето пример за демонстрация.
SELECT WEEKOFYEAR('2021-01-21') AS 'Week of the year';
Резултат:
+------------------+ | Week of the year | +------------------+ | 3 | +------------------+
Ето пример, използващ по-късна дата:
SELECT WEEKOFYEAR('2021-12-21') AS 'Week of the year';
Резултат:
+------------------+ | Week of the year | +------------------+ | 51 | +------------------+
Пример 2 – WEEKOFYEAR() срещу WEEK()
WEEKOFYEAR()
функцията е еквивалентна на използване на WEEK(date,3)
. В този контекст, 3
е режимът, който определя дали седмицата започва в неделя или понеделник и дали броят й варира от 0 до 53 или от 1 до 53.
Ето пример, който показва тези две функции една до друга:
SET @date = '2021-07-21'; SELECT WEEK(@date, 3), WEEKOFYEAR(@date);
Резултат:
+----------------+-------------------+ | WEEK(@date, 3) | WEEKOFYEAR(@date) | +----------------+-------------------+ | 29 | 29 | +----------------+-------------------+
За да видите как режимът влияе на резултата, вижте WEEK()
Примери – MySQL.