Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
S’applique à :SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Point de terminaison d’analytique SQL dans Microsoft Fabric
Entrepôt dans Microsoft Fabric
Base de données SQL dans Microsoft Fabric
Renvoie le reste d'un nombre divisé par un autre.
Conventions de la syntaxe Transact-SQL
Syntax
dividend % divisor
Arguments
dividend
Expression numérique à diviser. dividend doit être une expression valide de l’un des types de données des catégories entier et monétaire, ou bien du type de données numeric.
divisor
Expression numérique par laquelle diviser le dividende. divisor doit être une expression valide de l’un des types de données des catégories entier et monétaire, ou bien du type de données numeric.
Types de résultats
Déterminés par les types de données des deux arguments.
Remarks
Vous pouvez utiliser l’opérateur arithmétique modulo dans la liste de sélection de l’instruction SELECT avec n’importe quelle combinaison de noms de colonnes, de constantes numériques ou d’une expression valide des catégories de type de données entier et monétaire, ou du type de données numérique .
Examples
Les exemples de code de cet article utilisent les bases de données d'exemple AdventureWorks2025 ou AdventureWorksDW2025, que vous pouvez télécharger à partir de la page d'accueil Microsoft SQL Server Samples and Community Projects.
A. Exemple de base
L’exemple suivant divise le nombre 38 par 5. Le résultat est 7 en tant que partie entière du résultat, et montre comment modulo retourne le reste de 3.
SELECT
38 / 5 AS [Integer],
38 % 5 AS [Remainder];
B. Exemple utilisant des colonnes dans une table
L'exemple suivant renvoie le numéro d'identification et le prix unitaire du produit, ainsi que le reste (modulo) de la division du prix de chaque produit, converti en valeur entière, par le nombre de produits commandés.
SELECT TOP (100) ProductID,
UnitPrice,
OrderQty,
CAST((UnitPrice) AS INT) % OrderQty AS Modulo
FROM Sales.SalesOrderDetail;
GO
Exemples : Azure Synapse Analytics et Analytics Platform System (PDW)
C : Exemple de base
L’exemple suivant montre les résultats de l’opérateur lors de la %3 division par 2.
SELECT TOP(1) 3 % 2
FROM DimEmployee;
Voici le jeu de résultats.
1