Nowości w SQL Server 2012 – funkcje daty i czasu

2012-05-02

W SQL Server 2012 pojawiło się sześć nowych funkcji związanych z operacjami na typach daty i czasu. Są to funkcje:

  • DATEFROMPARTS
  • SMALLDATETIMEFROMPARTS
  • DATETIMEFROMPARTS
  • DATETIME2FROMPARTS
  • DATETIMEOFFSETFROMPARTS
  • EOMONTH

DATEFROMPARTS

Funkcja na podstawie trzech parametrów wejściowych typu int (rok, miesiąc, dzień) zwraca wartość typu date.

--2012-05-02
select DATEFROMPARTS(2012, 5, 2)

SMALLDATETIMEFROMPARTS

Funkcja na podstawie pięciu parametrów wejściowych typu int (rok, miesiąc, dzień, godzina, minuta) zwraca wartość typu smalldatetime.

--2012-05-02 12:15:00
select SMALLDATETIMEFROMPARTS(2012, 5, 2, 12, 15)

DATETIMEFROMPARTS

Funkcja na podstawie siedmiu parametrów wejściowych typu int (rok, miesiąc, dzień, godzina, minuta, sekunda, milisekunda) zwraca wartość typu datetime.

--2012-05-02 12:15:30.010
select DATETIMEFROMPARTS(2012, 5, 2, 12, 15, 30, 10)

DATETIME2FROMPARTS

Funkcja na podstawie ośmiu parametrów wejściowych typu int (rok, miesiąc, dzień, godzina, minuta, sekunda, część sekundy, precyzja) zwraca wartość typu datetime2. Znaczenie przedostatniego parametru zależy od podanej precyzji, np. dla precyzji 3 będą to milisekundy.

--2012-05-02 12:15:30.4567
select DATETIME2FROMPARTS(2012, 5, 2, 12, 15, 30, 4567, 4)

DATETIMEOFFSETFROMPARTS

Funkcja na podstawie dziesięciu parametrów wejściowych typu int (rok, miesiąc, dzień, godzina, minuta, sekunda, część sekundy, przesunięcie godzin, przesunięcie minut, precyzja) zwraca wartość typu datetimeoffset. Znaczenie siódmego parametru zależy od podanej precyzji, np. dla precyzji 3 będą to milisekundy.

--2012-05-02 12:15:30.4567 +02:15
select DATETIMEOFFSETFROMPARTS(2012, 5, 2, 12, 15, 30, 4567, 2, 15, 4)

EOMONTH

Funkcja jako parametr przyjmuje datę, dla której zwraca ostatni dzień danego miesiąca (typ date). Opcjonalnie można przekazać drugi parametr (typu int), który określa liczbę miesięcy jaka będzie dodana do daty podanej w pierwszym parametrze.

--2012-05-31
select EOMONTH(GetDate())

--2012-06-30
select EOMONTH(GetDate(), 1)

--2012-02-29
select EOMONTH(GetDate(), -3)

Więcej informacji o nowościach w SQL Server 2012: MSDN 

Reklamy

Posted on 2012-05-02, in SQL Server and tagged , , . Bookmark the permalink. Dodaj komentarz.

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj / Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj / Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj / Zmień )

Zdjęcie na Google+

Komentujesz korzystając z konta Google+. Wyloguj / Zmień )

Connecting to %s

%d blogerów lubi to: