Это зависит от того, какую версию SQL Server вы используете.
SQL Server 2005, 2008 и 2008 R2
Для этих версий вам потребуется использовать SQLCLR для предоставления этой функциональности из .NET. Вы можете написать свою собственную функцию SQLCLR, используя класс DateTime (как отмечено в answer @ @ GSerg), или вы можете просто скачать и установить бесплатную версию SQL # (которую я автор, но функция Date_Format свободна).
Пример:
SELECT SQL#.Date_Format(GETDATE(), 'dddd in MMMM', '') AS [Default_language],
SQL#.Date_Format(GETDATE(), 'dddd in MMMM', 'he') AS [Hebrew],
SQL#.Date_Format(GETDATE(), 'dddd in MMMM', 'de') AS [German];
Возвращает:
Default_language Hebrew German
Monday in January יום שני in ינואר Montag in Januar
SQL Server 2012 и новее
Используйте встроенную функцию FORMAT .
* 1 028 * Пример:
SELECT FORMAT(GETDATE(), 'dddd in MMMM') AS [Default_language],
FORMAT(GETDATE(), 'dddd in MMMM', 'he') AS [Hebrew],
FORMAT(GETDATE(), 'dddd in MMMM', 'de') AS [German];
Возвращает:
Default_language Hebrew German
Monday in January יום שני in ינואר Montag in Januar
Для SQLCLR и встроенных FORMAT
опций
Следующие две страницы MSDN подробно описывают доступные параметры форматирования: