Funkcje T-SQL

Funkcje tekstowe

Funkcja Zwraca
ASCII(cnar) Kod ASCII pierwszego znaku łańcucha.
CHAR(int) Znak ASCII odpowiadający podanemu kodowi.
CHARINDEK(char_wzorzec, char, [int pocz]) Pozycja pierwszego wystąpienia podłańcucha char_wzorzec w argumencie char, opcjonalnie można nakazać rozpoczęcie przeszukiwania od pozycji int pocz.
DIFFERENCE(charI, charZ) Różnica dwóch wyrażeń tekstowych. Używane do dobierania fonetyki.
LEFT(cnar, int) int znaków od lewej strony napisu char.
LEM(char) Długość łańcucha znakowego z pominięciem spacji kończących.
LOWER(char) Argument zapisany małymi literami.
LTRIM(char) Argument pozbawiony spacji wiodących.
NCHAR(int) Znak Unicode o wskazanym kodzie.
PATINDEX (char wzorzec, char) Pozycja pierwszego wystąpienia w argumencie char podłańcucha zgodnego z wzorcem char wzorzec lub 0, jeśli dopasowanie jest niemożliwe.
REPLACE (char1, char2, char3) W napisie cha r l wszystkie wystąpienia char2 zastępowane są przez char3, zwracany jest wynik tej operacji.
OUOTENAM (char, (char znak_cyt] ) cAarmusi być prawidłowym identyfikatorem w cudzysłowie. Dodaje na początku i końcu znaki [ i ], zwraca napis Unicode. W char znakcyt można podać ‚ lub „, wtedy znak ten zostanie użyty zamiast nawiasów kwadratowych.
REPLICATE(char, int) char powtórzone int razy.
REVERSE(char) char od końca.
RIGHT(char,int) int znaków od prawej strony z char.
RTRIM(char) char bez spacji kończących.
SOUNDEX(char) Czteroznakowy kod odpowiadający łańcuchowi char; funkcja SOUNDEX() jest tak skonstruowana, iż jednakowo lub podobnie wymawianym (po angielsku) łańcuchom odpowiadają identyczne kody.
SPACE(int) Ciąg spacji o długości int.
STR(float [ [długość, [poprzecinku]]) float zapisane w postaci tekstu o długości długość, zpoprzecinku cyframi po przecinku. Domyślne parametry wywołania to str( float, 10, 0).
STUFF(charl, pocz, długość, char2) długość znaków w chari zamieniane jest na char2 od pocz zaczynając, zwracany jest wynik tej operacji
SUBSTRING (char, pocz, długość) Podciąg char składający się z długość znaków, od pocz zaczynając.
UNICODE(char) Kod Unicode pierwszego znaku łańcucha.
UPPER(char) Argument zapisany wielkimi literami.

Funkcje matematyczne


Funkcja Zwraca
ABS(numeric) Wartość bezwzględna argumentu.
ACOS(float) Arcus cosinus argumentu.
ASIN(f2oat) Arcus sinus argumentu.
ATAN(f2oat) Arcus tangens argumentu
ATAN2(float1, float2) Arcus tangens (float2/floatl)
CEILING(numeric) Najmniejsza liczba całkowita większa bądź równa numeric.
COS (float) Cosinus float.
COT(float) Cotangens float.
degrees(numeric) Ilość stopni odpowiadających numeric radianów.
EXP(float) Wartość funkcji wykładniczej e”081.
FLOOR(nunieric) Największa wartość całkowita nie większa niż numeric.
LOG(float) Logarytm naturalny float.
LOG10(float) Logarytm dziesiętny float.
PI() Wartość liczby pi.
POWER (numericl, numerlc2) wartość numeric1 do potęgi numeric2
RADIANS(numeric) numeric stopni wyrażone w radianach.
RAND([ziarno]) Wartość losowa pomiędzy 0 a l. Jeśli podane zostanie ziarno, zostanie ono użyte do zainicjowania generatora liczb losowych.
ROUND(numeric, długość, odrzuć) niuneric zaokrąglone do długości długość. Jeśli podano odrzuć różne od 0, numeric jest obcinane do wskazanej długości.
SIGN(numeric) Funkcja signum: jeśli numeric jest dodatnie, zwraca 1; jeśli równe 0, zwraca 0; jeśli ujemne, zwraca -1
SIN(float) Sinus float.
SQUARE(float) floa t podniesione do kwadratu.
SORT(float) Pierwiastek kwadratowy z float.
TAN(float) Tangens float.

 


Funkcje obsługujące daty


Część daty

Skrót

Dopuszczalne wartości
Rok

Yy

1753-9999
Kwartał

Qq

1-4
Miesiąc

Mm

1-12
dzień roku

Dy

1-366
Dzień

Dd

1-31
Tydzień

Wk

1-53
dzień tygodnia

Dw

1-7
godzina

Hh

0-23
minuta

Mi

0-59
sekunda

Ss

0-59
milisekunda

Ms

0-999

 

Funkcja Zwraca
DATEADD(czdaty, int, data) Do data dodaje int jednostek czdaty.
DATEDIFF(czdaty, data1, data2) Liczba czdaty między datami data1 i data2.
DATENAME(czda ty, data) Nazwa czda ty w dacie data.
DATEPART(czda ty, da ta) Wskazana część daty data.
GETDATE() Bieżąca data i czas.
DAY(data) Dzień miesiąca jako liczba całkowita.
MONTH(data) Miesiąc jako liczba całkowita.
YEAR(data) Rok jako liczba całkowita.

 


Funkcje systemowe


Funkcja Zwraca
APP_NAME() Nazwa aplikacji wywołująca funkcję
CASE wyrażenie Lista warunków
CASE(wyrażenie AS typ_danych) Synonim funkcji conyert, rzutuje wartość na wskazany typ.
COALESCE(wyr1,[wyr2…]) Pierwsza niepusta wartość (nie null).
COL_LENGTH(tabela, kolumna) Długość kolumny w tabeli.
COL_NAME(id_tabeli, id_kolumny) Nazwa wskazanej kolumny we wskazanej tabeli.
COLUMNPROPERTY(id, kolumna, własność) Informacja o kolumnie tabeli określonej przez id. Własność wskazuje, o jaką informację chodzi.
CONVERT(typdanycn[(długość)], wyrażenie, układ} Przekształca wyrażeniem typ danych. Przy konwersji typu datetime lub float układ określa formatowanie.
CURSOR STATUS(local, cursor | global, cursor | variable, cursor) Kod procedury składowanej wskazujący, czy procedura zwróciła kursor i czy zbiór wynikowy zawiera jakieś wiersze.
DATABASEPROPERTY(baza, własność) Żądana właściwość wskazanej bazy danych.
DATALENGTH(wyrażenię) Rozmiar potrzebny do przechowania wyrażenia, włącznie ze spacjami końcowymi dla wyrażeń znakowych.
DB_ID([baza]) Identyfikator bazy danych wskazanej lub bieżącej.
DB_NAME( db_id] ) Nazwa bazy danych o wskazanym identyfikatorze lub bazy bieżącej.
GETAHSINULL([baza] ) Domyślne zachowanie się wartości pustych dla wskazanej lub bieżącej bazy danych.
getchecksum(kolumna) Suma kontrolna wartości wskazanej kolumny.
HOST_ID() Identyfikator procesu aplikacji klienta.
HOST_NAME() Nazwa stacji roboczej klienta.
IDENT_INCR(tabela) Przyrost wartości kolumny identyfikującej wskazanej tabeli.
IDENT_SEED(tabela) Wartość początkowa kolumny identyfikującej wskazanej tabeli.
INDEX_COL(tabela, id indeksu, id klucza) Nazwa kolumny dla przekazanych parametrów.
IS_MEMBER(grupa | rola) 1 jeśli użytkownik jest członkiem wskazanej grupy NT lub roli SQL Servera, 0 w przeciwnym wypadku.
IS_SRVROLEMEMBER (rola [, konto]) 1 jeśli identyfikator użytkownika należy do wskazanej roli serwera, 0 w przeciwnym wypadku. Konieczne jest podanie dokładnej nazwy konta.
ISDATE(char) 1 jeśli napis ma poprawny format typu datetime, 0 w przeciwnym wypadku.
FILEID(plik) Identyfikator wskazanego pliku.
FILE_NAME(idpliku) Nazwa pliku o przekazanym identyfikatorze.
FILEGROUP_ID(grupapliku) Identyfikator wskazanej grupy.
FILEGROUP_NAME (id grupypliku) Nazwa wskazanej grupy.
ISNULL(wyrażenie, wartość) Wartość jeśli wyrażenie jest puste (NULL).
ISNUMERIC(char) 1 jeśli char można odczytać jako liczbę, 0 w przeciwnym wypadku.
NEWID() Wygenerowany nowy identyfikator globalny.
NULLIF(wyr1, wyr2) null, jeśli wyr1 = wyr2.
OBJECT_ID(nazwa obiektu) Identyfikator wskazanego obiektu.
OBJECTPROPERTY (id obiektu, własność) Informacja o wskazanym obiekcie, własność decyduje o rodzaju zwracanej wartości.
PARSERNAME(nazwaobiektu, część obiektu) Wskazana część wybranego obiektu.
PERMISSIONS (idobiektu [ kolumna]) Maska bitowa określająca uprawnienia do obiektu i ewentualnie jego kolumny.
STATSDATE (id tabeli, Id indeksu) Data ostatniej aktualizacji danych organizacyjnych dotyczących wskazanego indeksu.
SUSER_ID(konto) loginid podanego konta. Funkcja dodana z uwagi na konieczność zachowania zgodności z poprzednimi wersjami, zaleca się używanie SUSER SID.
SUSER_NAME (.ld_konta) Nazwa wskazanego konta. Funkcja dodana z uwagi na konieczność zachowania zgodności z poprzednimi wersjami, zaleca się używanie SUSERSNAME.
SUSER_SID([konto]) Zabezpieczony numer identyfikujący (SID) konta.
SUSERS_NAME([idkonta]) Nazwa wskazanego konta.
TRIGGER_NESTLEVEL([id obiektu_tr]) Poziom zagnieżdżenia wyzwalacza (triggera) wskazanego lub bieżącego.
TYPEPROPERTY(typdanych. własność) Żądana właściwość wskazanego typu danych.
USER_ID([użytkownik]) Identyfikator wskazanego użytkownika.
USER_NAME([id użytkownika]) Nazwa użytkownika o wskazanym identyfikatorze.

 


Pseudofunkcje


Funkcja Zwracana wartość Odpowiadająca funkcji funkcja systemowa
CURRENT_TIMESTAMP Bieżąca data i czas GETDATE()
CURRENT_USER Nazwa użytkownika USER_NAME()
SESSION_USER Nazwa użytkownika USER_NAME()
SYSTEM_USER Nazwa konta w systemie SUSER_NAME()
USER Nazwa użytkownika USER_NAME()

 


Funkcje agregujące


Funkcja Zwraca
AVG([ALL | DISTINCT] wyrażenie) Wartość średnia dla wskazanego wyrażenia.
COUNT([ALL | DISTINCT] wyrażenie l *) Ilość niepustych wartości danego wyrażenia. Wartości null są zliczane, jeśli dodano *.
MAX([ALL | DISTINCT] wyrażenie) Największa wartość wyrażenia.
VARP(wyrażenie) Wariancja zbioru wartości wyrażenia.
STDEVP (.wyrażenie) Odchylenie standardowe zbioru wartości wyrażenia.
MIN([ALL | DISTINCT] wyrażenie) Najmniejsza wartość wyrażenia.
SUM([ALL | DISTINCT] wyrażenie) Suma wszystkich wartości wyrażenia.
VAR(wyrażenie) Wariancja wszystkich wartości wyrażenia.
STDEV(wyrażenie) Odchylenie standardowe wszystkich wartości wyrażenia.