Все, что я нашел, это список предопределенных DateFormat
, из которых я могу выбрать, как это
Как я помню, в MySQL (и PostgeSQL тоже?) Вы можете определить свой формат даты:
DATE_FORMAT(now(),'&m_%Y') --for 02_2012 etc.
SQL Server имеет то же самое? Я вижу, что люди должны написать функцию, чтобы сделать такую вещь, у нее есть встроенная?
РЕДАКТИРОВАТЬ:
Я только что нашел DatePart
функцию. Месяц может принимать как число, но всегда возвращает 1 цифру, даже если я использую datePart(MM, getdate())
sql-server
sql-server-2005
datetime
date-format
Король чан
источник
источник
Ответы:
Еще нет.
Вам нужно использовать
CONVERT
параметр стиля или взломать что-нибудь вместе сDATEPART
илиDATENAME
.SQL Server 2012 будет иметь
FORMAT
функцию, которая принимает строку формата .NET FrameworkСинтаксис:
Пример использования
Вы всегда можете использовать интеграцию с CLR и создать свой собственный UDF, который делает то же самое в 2005 или 2008 году.
источник
SQL#.Date_Format
и встроенныйFORMAT
ответ на этот SO: Есть ли способ получить даты с пользовательскими форматами в SQL Server? :-)Если ваша цель - просто форматированный вывод, и он не должен оставаться в типе данных datetime, использование CONVERT с кодом формата является отличным инструментом. Список форматов и их соответствующие коды можно найти здесь: http://msdn.microsoft.com/en-us/library/ms187928.aspx
источник