Udostępnij przez


Jakie są funkcje bazy danych SQL?

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Punkt końcowy analizy SQL w usłudze Microsoft FabricHurtownia danych w usłudze Microsoft FabricBaza danych SQL w usłudze Microsoft Fabric

Dowiedz się więcej o kategoriach wbudowanych funkcji, których można używać z bazami danych SQL. Możesz użyć wbudowanych funkcji lub utworzyć własne funkcje zdefiniowane przez użytkownika.

Funkcje agregujące

Funkcje agregujące wykonują obliczenia na zestawie wartości i zwracają pojedynczą wartość. Są one dozwolone na liście select lub HAVING klauzuli SELECT instrukcji. Agregację można użyć w połączeniu z klauzulą GROUP BY , aby obliczyć agregację w kategoriach wierszy. OVER Użyj klauzuli , aby obliczyć agregację dla określonego zakresu wartości. Klauzula nie może być zgodna OVER z GROUPING agregacjami lub GROUPING_ID .

Wszystkie funkcje agregujące są deterministyczne, co oznacza, że zawsze zwracają tę samą wartość po uruchomieniu na tych samych wartościach wejściowych. Aby uzyskać więcej informacji, zobacz Funkcje deterministyczne i niedeterministyczne.

Funkcje analityczne

Funkcje analityczne obliczają wartość agregowaną na podstawie grupy wierszy. Jednak w przeciwieństwie do funkcji agregujących funkcje analityczne mogą zwracać wiele wierszy dla każdej grupy. Za pomocą funkcji analitycznych można obliczać średnie ruchome, sumy bieżące, wartości procentowe lub wyniki top-N w grupie.

Funkcje manipulowania bitami

Dotyczy do: SQL Server 2022 (16.x) i nowsze wersje: Azure SQL Managed Instance, Azure SQL Database, SQL database in Microsoft Fabric

Funkcje manipulowania bitami umożliwiają wydajniejsze przetwarzanie i przechowywanie danych niż w przypadku poszczególnych bitów. Aby uzyskać więcej informacji, zobacz Funkcje manipulowania bitami.

Funkcje konfiguracji

Funkcje konfiguracji to funkcje skalarne, które zwracają informacje o bieżących ustawieniach opcji konfiguracji, na przykład @@SERVERNAME (Transact-SQL).

Wszystkie funkcje konfiguracyjne działają w sposób niedeterministyczny. Innymi słowy, funkcje te nie zawsze zwracają te same wyniki za każdym razem, gdy są wywoływane, nawet przy tym samym zestawie wartości wejściowych. Aby uzyskać więcej informacji na temat determinizmu funkcji, zobacz Funkcje deterministyczne i niedeterministyczne.

Funkcje klasyfikowania

Funkcje klasyfikacji zwracają wartość klasyfikacji dla każdego wiersza w partycji. W zależności od używanej funkcji niektóre wiersze mogą otrzymać tę samą wartość co inne wiersze. Funkcje klasyfikacji są nieokreślone.

Funkcje zestawu wierszy

Funkcje zestawu wierszy zwracają obiekt, którego można użyć, takich jak odwołania do tabeli w instrukcji SQL.

Funkcje skalarne

Operuj na pojedynczej wartości, a następnie zwracaj pojedynczą wartość. Funkcje skalarne mogą być używane wszędzie tam, gdzie wyrażenie jest prawidłowe.

Kategorie funkcji skalarnych

Kategoria funkcji Description
Funkcje konfiguracji Zwraca informacje o bieżącej konfiguracji.
Funkcje konwersji Obsługa rzutowania i konwertowania typów danych.
Funkcje kursora Zwraca informacje o kursorach.
Typy i funkcje danych daty i godziny Wykonywanie operacji na wartościach wejściowych daty i godziny oraz zwracanych ciągów, liczbowych lub wartości daty i godziny.
Funkcje programu Graph Wykonywanie operacji w celu konwersji na i z reprezentacji znaków węzła grafu i identyfikatorów krawędzi.
Funkcje JSON Weryfikowanie, wykonywanie zapytań lub zmienianie danych JSON.
Funkcje logiczne Wykonywanie operacji logicznych.
Funkcje matematyczne Wykonywanie obliczeń na podstawie wartości wejściowych podanych jako parametrów funkcji i zwracanie wartości liczbowych.
Funkcje metadanych Zwraca informacje o obiektach bazy danych i bazy danych.
Funkcje zabezpieczeń Zwraca informacje o użytkownikach i rolach.
funkcje ciągów Wykonywanie operacji na wartości wejściowej ciągu (char lub varchar) i zwracanie ciągu lub wartości liczbowej.
Funkcje systemowe Wykonywanie operacji i zwracanie informacji o wartościach, obiektach i ustawieniach w wystąpieniu programu SQL Server.
Funkcje statystyczne systemu Zwracaj informacje statystyczne dotyczące systemu.
Funkcje tekstu i obrazu Wykonywanie operacji na wartościach tekstowych lub wejściowych obrazach lub kolumnach oraz zwracanie informacji o wartości.

Funkcje łańcuchów znakowych

Funkcje skalarne wykonują operację na wartości wejściowej ciągu i zwracają ciąg lub wartość liczbową, na przykład ASCII (Transact-SQL).

Wszystkie wbudowane funkcje ciągów z wyjątkiem FORMAT są deterministyczne. Oznacza to, że zwracają tę samą wartość za każdym razem, gdy są wywoływane z określonym zestawem wartości wejściowych. Aby uzyskać więcej informacji na temat determinizmu funkcji, zobacz Funkcje deterministyczne i niedeterministyczne.

Gdy funkcje ciągów są przekazywane argumenty, które nie są wartościami ciągów, typ wejściowy jest niejawnie konwertowany na typ danych tekstowych. Aby uzyskać więcej informacji, zobacz Konwersja typów danych (aparat bazy danych).

Determinizm funkcji

Wbudowane funkcje programu SQL Server są deterministyczne lub nieokreślone. Funkcje są deterministyczne, gdy zawsze zwracają ten sam wynik w dowolnym momencie, gdy są wywoływane przy użyciu określonego zestawu wartości wejściowych. Funkcje są nieokreślone, gdy mogą zwracać różne wyniki za każdym razem, gdy są wywoływane, nawet przy użyciu tego samego określonego zestawu wartości wejściowych. Aby uzyskać więcej informacji, zobacz Funkcje deterministyczne i niedeterministyczne

Sortowanie funkcji

Funkcje, które przyjmują dane wejściowe ciągu znaków i zwracają dane wyjściowe ciągu znaków, używają sortowania ciągu wejściowego dla danych wyjściowych.

Funkcje, które przyjmują dane wejściowe inne niż znaki i zwracają ciąg znaków, używają domyślnego sortowania bieżącej bazy danych dla danych wyjściowych.

Funkcje, które przyjmują wiele znaków ciągów wejściowych i zwracają ciąg znaków, używają reguł pierwszeństwa sortowania, aby ustawić sortowanie ciągu wyjściowego. Aby uzyskać więcej informacji, zobacz Pierwszeństwo sortowania.

Ograniczenia

Aby uzyskać informacje na temat ograniczeń typów funkcji i platform, zobacz CREATE FUNCTION (Transact-SQL).