sql >> Base de Datos >  >> RDS >> Sqlserver

@@DATEFIRST:obtenga el primer día de la semana en SQL Server

En SQL Server, el primer día de la semana está determinado por la configuración de idioma actual. También puede anular eso con SET DATEFIRST instrucción, que le permite establecer explícitamente el primer día de la semana.

En cualquier caso, puede usar el @@DATEFIRST función para averiguar qué configuración está usando su sesión para el primer día de la semana. Este artículo demuestra cómo.

Sintaxis

La sintaxis es simple. Va así:

@@DATEFIRST

Ejemplo

Aquí hay un ejemplo de uso.

SELECT @@DATEFIRST AS 'Result';

Resultado:

+----------+
| Result   |
|----------|
| 7        |
+----------+

Esto me dice que el primer día de la semana es domingo. Lo sé por la siguiente tabla.

Asignaciones para el primer día de la semana

La siguiente tabla muestra cómo se asigna cada valor a un día de la semana.

Valor El primer día de la semana es
1 lunes
2 martes
3 miércoles
4 jueves
5 viernes
6 sábado
7 domingo

Así que el valor de retorno de @@DATEFIRST será un tinyint entre 1 y 7 .

Este valor está determinado inicialmente por la configuración de idioma actual, sin embargo, como se mencionó, también puede usar SET DATEFIRST para anular la configuración de idioma.

Para ver qué @@DATEFIRST la configuración se asigna a cada idioma, aquí hay una lista de todos los idiomas y formatos de fecha asociados en SQL Server 2017.

También puede usar el sp_helplanguage procedimiento almacenado para devolver esa lista. Para ello, consulte Cómo encontrar los formatos de fecha utilizados para un idioma específico en SQL Server (T-SQL).