W MySQL możesz użyć WEEKOFYEAR()
funkcja zwracająca tydzień kalendarzowy dla danego dnia. Wystarczy podać datę jako argument, a funkcja zwróci tydzień kalendarzowy jako liczbę z zakresu od 1 do 53.
Składnia
Składnia wygląda tak:
WEEKOFYEAR(date)
Gdzie date
to data, z której ma zostać zwrócony tydzień kalendarzowy.
Przykład 1 – Podstawowe użycie
Oto przykład do zademonstrowania.
SELECT WEEKOFYEAR('2021-01-21') AS 'Week of the year';
Wynik:
+------------------+ | Week of the year | +------------------+ | 3 | +------------------+
Oto przykład z wykorzystaniem późniejszej daty:
SELECT WEEKOFYEAR('2021-12-21') AS 'Week of the year';
Wynik:
+------------------+ | Week of the year | +------------------+ | 51 | +------------------+
Przykład 2 – WEEKOFROK() vs TYDZIEŃ()
WEEKOFYEAR()
funkcja jest odpowiednikiem użycia WEEK(date,3)
. W tym kontekście 3
to tryb, który określa, czy tydzień zaczyna się w niedzielę czy w poniedziałek, i czy jego liczba wynosi od 0 do 53 czy od 1 do 53.
Oto przykład, który pokazuje te dwie funkcje obok siebie:
SET @date = '2021-07-21'; SELECT WEEK(@date, 3), WEEKOFYEAR(@date);
Wynik:
+----------------+-------------------+ | WEEK(@date, 3) | WEEKOFYEAR(@date) | +----------------+-------------------+ | 29 | 29 | +----------------+-------------------+
Aby zobaczyć, jak tryb wpływa na wynik, zobacz WEEK()
Przykłady – MySQL.