SET DATEFIRST (Transact-SQL)
Устанавливает первый день недели в виде числа от 1 до 7.
Соглашения о синтаксисе в Transact-SQL
Синтаксис
SET DATEFIRST { number | @number_var }
Аргументы
number | **@**number_var
Целочисленное значение, указывающее первый день недели. Может быть одним из:Значение Первый день недели 1
Понедельник
2
Вторник
3
Среда
4
Четверг
5
Пятница
6
Суббота
7 (по умолчанию для региональных настроек «Английский (США)»)
Воскресенье
Замечания
Для просмотра текущего значения SET DATEFIRST используется функция @@DATEFIRST.
Аргумент функции SET DATEFIRST устанавливается во время выполнения или запуска, а не во время синтаксического анализа.
Разрешения
Требует членства в роли public.
Примеры
Следующий пример иллюстрирует получение по дате соответствующего ей дня недели, а также показывает эффект от изменения параметра DATEFIRST
.
-- SET DATEFIRST to U.S. English default value of 7.
SET DATEFIRST 7;
SELECT CAST('1/1/1999' AS DATETIME) AS SelectDate, DATEPART(dw, '1/1/1999') AS DayOfWeek;
-- January 1, 1999 is a Friday. Because the U.S. English default
-- specifies Sunday as the first day of the week, DATEPART of 1/1/1999
-- (Friday) yields a value of 6, because Friday is the sixth day of the
-- week when starting with Sunday as day 1.
SET DATEFIRST 3;
-- Because Wednesday is now considered the first day of the week,
-- DATEPART should now show that 1/1/1999 (a Friday) is the third day of the
-- week. The following DATEPART function should return a value of 3.
SELECT CAST('1/1/1999' AS DATETIME) AS SelectDate, DATEPART(dw, '1/1/1999') AS DayOfWeek;
GO
См. также
Справочник
Типы данных (Transact-SQL)
@@DATEFIRST (Transact-SQL)
Дата и время (Transact-SQL)
SET (Transact-SQL)