Création et gestion des fonctions utilisateur (scalar, table-valued)
SQL Server permet également de définir des fonctions utilisateur pour encapsuler des calculs réutilisables ou des opérations de manipulation des données. Il existe deux types de fonctions utilisateur : scalar et table-valued.
7.3.1 Fonctions scalaires
Les fonctions scalaires renvoient une seule valeur. Elles sont souvent utilisées dans des requêtes SQL pour calculer ou transformer des données.
Exemple :
CREATE FUNCTION CalculerTaxe (@Salaire DECIMAL(10, 2))
RETURNS DECIMAL(10, 2)
AS
BEGIN
RETURN @Salaire * 0.15;
END;
Utilisation dans une requête :
SELECT Nom, Prenom, Salaire, dbo.CalculerTaxe(Salaire) AS Taxe
FROM Employes;
7.3.2 Fonctions table-valued
Les fonctions table-valued renvoient une table de résultats, ce qui les rend très utiles pour encapsuler des requêtes complexes.
Exemple de fonction qui renvoie une table de résultats :
CREATE FUNCTION ObtenirEmployesParDepartement (@DepartementID INT)
RETURNS TABLE
AS
RETURN (
SELECT EmployeID, Nom, Prenom, Salaire
FROM Employes
WHERE DepartementID = @DepartementID
);
Utilisation dans une requête :
sqlCopier le codeSELECT * FROM dbo.ObtenirEmployesParDepartement(2);
Last updated