Partager via


Quelles sont les fonctions de base de données SQL ?

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Point de terminaison d’analytique SQL dans Microsoft FabricEntrepôt dans Microsoft FabricBase de données SQL dans Microsoft Fabric

Découvrez les catégories de fonctions intégrées que vous pouvez utiliser avec les bases de données SQL. Vous pouvez utiliser les fonctions intégrées ou créer vos propres fonctions définies par l’utilisateur.

Fonctions d'agrégation

Les fonctions d’agrégation effectuent un calcul sur un ensemble de valeurs et renvoient une valeur unique. Ils sont autorisés dans la liste de sélection ou la HAVING clause d’une SELECT instruction. Vous pouvez utiliser une agrégation en combinaison avec la GROUP BY clause pour calculer l’agrégation sur les catégories de lignes. Utilisez la clause pour calculer l’agrégation OVER sur une plage de valeurs spécifique. La OVER clause ne peut pas suivre les agrégations ou GROUPING les GROUPING_ID agrégations.

Toutes les fonctions d’agrégation sont déterministes, ce qui signifie qu’elles renvoient toujours la même valeur lorsqu’elles s’exécutent sur les mêmes valeurs d’entrée. Pour plus d’informations, consultez fonctions déterministes et non déterministes.

Fonctions analytiques

Les fonctions analytiques calculent une valeur d'agrégation basée sur un groupe de lignes. Toutefois, contrairement aux fonctions d’agrégation, les fonctions analytiques peuvent renvoyer plusieurs lignes pour chaque groupe. Vous pouvez utiliser des fonctions analytiques pour calculer des moyennes mobiles, des cumuls, des pourcentages ou des résultats de type « N premiers » dans un groupe.

Fonctions de manipulation de bits

S’applique à : SQL Server 2022 (16.x) et versions ultérieures, Azure SQL Managed Instance, Azure SQL Database, SQL database in Microsoft Fabric

Les fonctions de manipulation de bits vous permettent de traiter et de stocker les données plus efficacement qu’avec des bits individuels. Pour plus d’informations, consultez Fonctions de manipulation de bits.

Fonctions de configuration

Les fonctions de configuration sont des fonctions scalaires qui retournent des informations sur les paramètres d’option de configuration actuels, par exemple , @@SERVERNAME (Transact-SQL).

Toutes les fonctions de configuration sont non déterministes. Cela signifie qu'elles ne renvoient pas toujours les mêmes résultats chaque fois qu'elles sont appelées, même avec un ensemble identique de valeurs d'entrée. Pour plus d’informations sur le déterminisme des fonctions, consultez Fonctions déterministes et non déterministes.

Fonctions de classement

Les fonctions de classement renvoient une valeur de classement pour chaque ligne d'une partition. Selon la fonction utilisée, certaines lignes peuvent recevoir la même valeur que d'autres lignes. Les fonctions de classement sont non déterministes.

Fonctions d’ensemble de lignes

Les fonctions d’ensemble de lignes retournent un objet qui peut être utilisé comme des références de table dans une instruction SQL.

Fonctions scalaires

Effectuent des opérations sur une valeur unique et retournent ensuite une valeur unique. Les fonctions scalaires peuvent être utilisées pour autant qu'une expression soit valide.

Catégories de fonctions scalaires

Catégorie de fonctions Description
Fonctions de configuration Retournent des informations concernant la configuration actuelle.
Fonctions de conversion Prennent en charge la conversion de type de données.
Fonctions de curseur Retournent des informations sur les curseurs.
Types de données et fonctions de date et d’heure Effectuent des opérations sur des valeurs d'entrée de type date et heure et retournent des valeurs de type date et heure, numérique ou chaîne.
Fonctions de graphe Effectuez des opérations de conversion depuis et vers des représentations en caractères d’ID de nœud et d’arête de graphe.
Fonctions JSON Validez, interrogez et modifiez les données JSON.
Fonctions logiques Effectuent des opérations logiques.
Fonctions mathématiques Effectuent des calculs sur la base des valeurs d'entrée fournies comme paramètres aux fonctions et retournent des valeurs numériques.
Fonctions de métadonnées Retournent des informations concernant la base de données et les objets de base de données.
Fonctions de sécurité Retournent des informations concernant les utilisateurs et les rôles.
Fonctions de chaîne Effectuent des opérations sur une valeur d’entrée de type chaîne (char ou varchar) et renvoient une valeur numérique ou de type chaîne.
Fonctions système Effectuent des opérations et retournent des informations concernant les valeurs, objets et paramètres de SQL Server.
Fonctions statistiques système Retournent des informations statistiques concernant le système.
Fonctions texte et image Effectuent des opérations sur des colonnes ou des valeurs d'entrée de type texte ou image et retournent des informations concernant la valeur.

Fonctions de chaîne

Les fonctions scalaires effectuent une opération sur une valeur d’entrée de chaîne et retournent une chaîne ou une valeur numérique, par exemple ASCII (Transact-SQL).

Toutes les fonctions de chaîne intégrées, à l’exception FORMAT de celles-ci, sont déterministes. Cela signifie qu’ils retournent la même valeur chaque fois qu’ils sont appelés avec un ensemble spécifique de valeurs d’entrée. Pour plus d’informations sur le déterminisme des fonctions, consultez Fonctions déterministes et non déterministes.

Lorsque les fonctions de chaîne sont passées à des arguments qui ne sont pas des valeurs de chaîne, le type d’entrée est implicitement converti en type de données texte. Pour plus d’informations, consultez Conversion de type de données (moteur de base de données).

Déterminisme des fonctions

Les fonctions SQL Server intégrées sont déterministes ou non déterministes. Une fonction déterministe retourne toujours le même résultat chaque fois qu’elle est appelée avec un ensemble spécifique de valeurs d’entrée. Une fonction non déterministe peut retourner des résultats différents chaque fois qu’elle est appelée, même si le même ensemble spécifique de valeurs d’entrée est utilisé. Pour plus d’informations, consultez Fonctions déterministes et non déterministes

Classement des fonctions

Les fonctions qui acceptent une entrée sous forme de chaîne de caractères et retournent une chaîne de caractères utilisent le classement de la chaîne d'entrée pour la sortie.

Les fonctions qui acceptent des entrées de type non-caractère et retournent une chaîne de caractères utilisent le classement par défaut de la base de données active pour la sortie.

Les fonctions qui acceptent plusieurs entrées sous forme de chaîne de caractères et retournent une chaîne de caractères utilisent les règles de priorité des classements pour définir le classement de la chaîne de sortie. Pour plus d’informations, consultez Priorité du classement.

Limites

Pour plus d’informations sur les limitations des types de fonctions et des plateformes, consultez CREATE FUNCTION (Transact-SQL).