Тази публикация съдържа списък с функции за дата и час на Transact-SQL, налични в SQL Server (от SQL Server 2017).
Това включва функции, които връщат датата или части от датата, както и функции, които манипулират и/или форматират датата.
Системни стойности за дата/час
Следните функции връщат системната дата и час. Всички стойности за дата/час, върнати от тези функции, са получени от операционната система, на която се изпълнява екземплярът на SQL Server.
По-висока прецизност
- SYSDATETIME ()
- SYSDATETIMEOFFSET ()
- SYSUTCDATETIME ()
По-ниска прецизност
- CURRENT_TIMESTAMP
- GETDATE ()
- GETUTCDATE ()
Части за дата/час на връщане
Тези функции връщат приложимата част от датата, която сте посочили, от датата, която посочите.
Например, можете да използвате MONTH()
за да върнете месечния компонент на дадена дата.
- DATENAME ( datepart , дата )
- DATEPART ( datepart , дата )
- ДЕН ( дата )
- МЕСЕЦ ( дата )
- ГОДИНА ( дата )
Върнете стойност на дата/час от неговите части
Тези функции ви позволяват да изградите стойност за дата и/или час от различните части, които съставляват датата/часа. Просто предоставете различните части и функцията ще върне датата/часа в приложимия тип данни.
Например можете да предадете стойностите за година, месец и ден на DATEFROMPARTS()
функция и тя ще върне дата стойност, състояща се от тези части.
- DATEFROMPARTS ( година , месец , ден )
- DATETIME2FROMPARTS ( година , месец , ден , час , минута , секунди , дроби , прецизност )
- DATETIMEFROMPARTS ( година , месец , ден , час , минута , секунди , милисекунди )
- DATETIMEOFFSETFROMPARTS ( година , месец , ден , час , минута , секунди , дроби , hour_offset , minute_offset , прецизност )
- SMALLDATETIMEFROMPARTS ( година , месец , ден , час , минута )
- TIMEFROMPARTS ( час , минута , секунди , дроби , прецизност )
Връщане на разликата между две стойности за дата/час
Следните функции могат да се използват за връщане на разликата между две различни стойности за дата/час.
- DATEDIFF ( част от дата , начална дата , крайна дата )
- DATEDIFF_BIG ( част от дата , начална дата , крайна дата )
Имайте предвид, че тези функции правят по същество едно и също нещо. Разликата е във върнатата стойност.
Промяна на стойностите за дата/час
- DATEADD (datepart , число , дата )
- EOMONTH ( начална_дата [, месец_до_добавяне ] )
- SWITCHOFFSET (DATETIMEOFFSET , часова_зона )
- TODATETIMEOFFSET (израз , часова_зона )
Задаване или връщане на функции за формат на сесия
- @@DATEFIRST
- ЗАДАДЕТЕ ДАТА ПЪРВА { число | @ число_вар }
- ЗАДАДЕТЕ ФОРМАТ НА ДАТАТА { формат | @ format_var }
- @@ЕЗИК
- ЗАДАДЕТЕ ЕЗИК { [ N ] ‘ език ‘ | @ language_var }
- sp_helplanguage [ [ @language = ] ‘ език ‘ ]
Проверка на стойност за дата/час
Тази функция ви позволява да проверите дали предаденият към нея аргумент има валидна стойност за дата или час.
- ISDATE ( израз )
Свързани функции/статии
- ODBC скаларни функции за дата и час
- Как да форматирате датата и часа в SQL Server