Как и предполагал @Lamak, вы можете использовать функцию DATENAME , если вы используете SQL Server 2005 или более позднюю версию:
SELECT DATENAME(dw, DateField) FROM Table
В более ранних версиях самое близкое, что вы могли получить, былофункция DATEPART с dw
в качестве интервала, но вам нужен CASE для преобразования числа, возвращаемого в название дня, , как показано здесь .
SELECT CASE DATEPART(dw, DateField)
WHEN 1 THEN 'Sunday'
WHEN 2 THEN 'Monday'
WHEN 3 THEN 'Tuesday'
WHEN 4 THEN 'Wednesday'
WHEN 5 THEN 'Thursday'
WHEN 6 THEN 'Friday'
WHEN 7 THEN 'Saturday'
END AS DayOfWeek
FROM Table
Также обратите внимание на замечания в документации MSDN для этих функций даты, чтобы узнать, как указать, какой день недели считается первым днем (зависит от настройки DATEFORMAT
вашей среды SQL).