Microsoft SQL Server använder funktioner för att utföra gemensamma eller ofta upprepad arbetsuppgifter . Dessa funktioner finns i två breda kategorier : Inbyggda funktioner som följer med SQL Server -paketet , och användardefinierade funktioner, eller UDF , som utvecklas av DBA . Inbyggda funktioner är vidare uppdelade efter typ . Typer
Inbyggda funktioner är grupperade utifrån vilken typ av åtgärder de utför . Funktioner som returnerar ett objekt kallas rowset funktioner . De som återvänder en enda , sammanfattade värde , såsom ett genomsnitt , kallas Mängdfunktioner . Ranking funktioner returnerar en rangordning värde för varje rad i en partition. Skalärfunktioner returnera ett enda värde baserat på ett enda värde i databasen .
Rowset Funktioner
Några vanliga rowset funktioner är OPENQUERY och OPENROWSET . Dessa funktioner gör att du kan arbeta med andra datakällor . Rowset funktioner är icke-deterministisk , vilket innebär att värdet som returneras av funktionen kan variera varje gång funktionen anropas , även om de inmatade värdena är desamma .
Mängdfunktioner
Mängdfunktioner täcker de flesta statistiska beräkningar . Detta skulle kunna omfatta beräkna lägsta ( MIN ) , max ( MAX ) och genomsnittliga ( AVG ) värden för rader med data . Dessa funktioner är deterministiska , vilket innebär att ges samma ingångsvärden varje gång , kommer de tillbaka samma data . Varje aggregat funktion returnerar endast ett värde . Är en icke-deterministisk funktion som används för att rangordna data i partitioner
rankingfunktioner
Ranking funktioner . Det finns fyra rankingfunktioner : RANK , NTILE , DENSE_RANK och ROW_NUMBER . En rangordning funktion är en metod för att beställa data. Observera att det är möjligt för flera rader för att få samma rang .
Skalärfunktioner
skalärfunktioner omfattar många andra typer av funktioner , inklusive matematik , sträng , text och image funktioner. Dessutom finns funktioner i den här kategorin för att manipulera databasen inställningar, t.ex. ODBC kommandon , metadata på kolumner och tabeller , statistik och inställningar säkerhetsinställningar . Denna kategori omfattar också markörer, triggers och funktioner kryptografi .