Nowa wersja SQL Server 2011 wprowadzi kilka nowości odnośnie języka. Dzisiaj zaprezentuje kilka nowych funkcji które pojawią się wraz z premierą. Warto już teraz poznać niektóre z nich, z pewnością ułatwią pracę wraz z finalną wersją produktu.
- IIF(warunek, prawda,fałsz). Funkcja umożliwiająca zastąpienie instrukcji
CASE WHEN warunek THEN a ELSE b END;
Z pewnością ułatwi i "uczytelni" zapis skomplikowanych wyrażeń. Wystarczy teraz napisać:
IIF(warunek, a,b)
Oczywiście można zagnieżdżać instrukcję. Od strony MS SQL Server, IIF zostanie rozwinięty do CASE, jednak z mojego punktu widzenia instrukcja IIF jest znacznie bardziej czytelna.
- Concat(string,string,....) - funkcja łączy w jeden ciąg znaków (string). Cóż wielu może się wydawać, że istnienie takiej funkcji ma raczej niezbyt duże zastosowanie, jednak biorąc pod uwagę, że w zależności od od typu funkcja sama zamienia wszystkie argumenty na łańcuchy (null traktuje jako pusty ciąg znaków) to już jej przydatność rośnie. Przykład:
Concat('Ala',' ','ma',' ',' 2 ', 'koty);
- FORMAT(value, format) - funkcja z pewnością znana dobrze wszystkim programistą C#. Pozwala dowolnie sformatować ciąg znaków. Należy pamiętać, że aby była możliwość skorzystania z tej funkcji na serwerze musi być zainstalowany .NET Framework.
- PARSE(string AS typ) - funkcja czerpiąca z .NET frameworka i działająca jak popularne funkcje dodawane do typów prostych Parse. Pozwala na prostą konwersję jednego typu do drugiego
- TRY_PARSE(string AS typ) - bezpieczniejsza wersja instrukcji PARSE.W przypadku niepowodzenia podczas konwersji funkcja zwróci NULL a nie tak jak w przypadku funkcji PARSE rzuci błędem.
- EOMONTH(data_startowa, [offset]) - zwraca ostatni dzień miesiąca - przydatny jeżeli chcemy dowiedzieć się jaki dzień jest ostatnim w danym miesiącu. Dodatkowo możemy dodać lub odjąć żądaną ilość dni.
- DATEFROMPARTS(rok,miesiąc,dzień) - konwertuje części daty na typ date
- TIMEFROMPARTS(godziny,minuty,sekundy,część ułamkowa, dokładność) - podobnie jak w poprzedniej funkcji z tym że zwraca typ time
Wymieniłem tutaj tylko kilka nowych funkcji które zostaną dołączone do nowego wydania SQL Servera. W finalnej wersji z pewnością nie zabraknie kolejnych udoskonaleń/nowości.
Brak komentarzy:
Prześlij komentarz