Referencia de funciones

WEEK

Equivalente en PostgreSQL:

Devuelve el número de la semana del año de una fecha.

MySQL 8.4
WEEK(date[, mode])
  • [ ]parte opcional
date
Fecha o fecha y hora
DATE
mode
Modo de numeración de las semanas; por defecto, se toma de la variable default_week_format, normalmente 0
INTOpcional
01234567

Valor devuelto

Número entero de 0 a 53 o de 1 a 53, según mode; NULL para una fecha incompleta y para un valor no reconocido

Ejemplos

Número de semana por defecto

MySQL 8.4
SELECT WEEK('2022-06-16');
WEEK('2022-06-16')
24

El 1 de enero en distintos modos

MySQL 8.4
SELECT WEEK('2022-01-01') AS mode_0,
	WEEK('2022-01-01', 3) AS mode_3;
mode_0mode_3
052

Detalles

Los días anteriores a la primera semana del año reciben el número 0 en los modos 0, 1, 4 y 5, y el número de la última semana del año anterior en los modos 2, 3, 6 y 7: WEEK('2022-01-01', 0) devuelve 0 y WEEK('2022-01-01', 2) devuelve 52.

También ocurre al revés: en los modos 3 y 6, los últimos días de diciembre pueden caer en la primera semana del año siguiente: WEEK('2024-12-30', 3) devuelve 1. Para ver también el año de la semana, usa YEARWEEK.

modePrimer día de la semanaRangoLa semana 1 es la primera semana en la que
0Domingo0–53hay un domingo
1Lunes0–53hay 4 o más días de ese año
2Domingo1–53hay un domingo
3Lunes1–53hay 4 o más días de ese año (ISO 8601)
4Domingo0–53hay 4 o más días de ese año
5Lunes0–53hay un lunes
6Domingo1–53hay 4 o más días de ese año
7Lunes1–53hay un lunes

Véase también