Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Vous pouvez utiliser la clause TOP pour limiter le nombre de lignes modifiées dans une instruction UPDATE. Lorsqu'une clause TOP (n) est utilisée avec UPDATE, l'opération de mise à jour est effectuée sur une sélection aléatoire de n lignes. Par exemple, supposons que vous souhaitiez alléger l'activité commerciale de l'un de vos chefs de vente en attribuant certains clients à un vendeur subalterne. La requête suivante retire un échantillon aléatoire de 10 clients à un vendeur et l'attribue à un autre vendeur.
USE AdventureWorks;
UPDATE TOP (10) Sales.Store
SET SalesPersonID = 276
WHERE SalesPersonID = 275;
GO
Si vous devez utiliser la clause TOP pour appliquer des mises à jour en respectant une certaine chronologie, vous devez combiner les clauses TOP et ORDER BY dans une instruction de sous-sélection. L'exemple ci-dessous met à jour les heures de congé des 10 employés dont la date d'embauche est la plus ancienne.
UPDATE HumanResources.Employee
SET VacationHours = VacationHours + 8
FROM (SELECT TOP 10 EmployeeID FROM HumanResources.Employee
ORDER BY HireDate ASC) AS th
WHERE HumanResources.Employee.EmployeeID = th.EmployeeID;
GO
Voir aussi
Concepts
Limitation des jeux de résultats à l'aide de TOP et de PERCENT
Modification des données à l'aide de la clause WHERE
Modification de données à l'aide de la clause FROM
Modification de données à l'aide de la clause SET
Modification des données au moyen de l'instruction UPDATE
Autres ressources
UPDATE (Transact-SQL)
SELECT (Transact-SQL)
TOP (Transact-SQL)