ORDER BY
et ROWS
La clause ORDER BY
vous permet de définir l'ordre dans lequel les enregistrements sont mis à jour, ce qui peut être utile dans certains cas.
La clause ROWS
n'a de sens qu'avec la clause ORDER BY
. Toutefois, il peut être utilisé séparément.
Avec un seul argument m, ROWS limite la mise à jour aux m premiers enregistrements.
Caractéristiques :
Si m est supérieur au nombre d'enregistrements de la table cible en cours de traitement, l'ensemble des lignes est mis à jour ;
Si m = 0, aucun enregistrement n'est mis à jour ;
Si m < 0, une erreur est émise.
Avec les deux arguments m et n, ROWS limite la mise à jour des enregistrements de m à n inclus. Les deux arguments sont des entiers et commencent par 1.
Caractéristiques :
Si m est supérieur au nombre d'enregistrements dans la table cible, aucun enregistrement n'est mis à jour ;
Si n est supérieur au nombre d'enregistrements dans la table cible, les enregistrements de m à la fin du jeu sont mis à jour ;
Si m < 1 ou n < 1, une erreur est émise ;
Si n = m - 1, aucun enregistrement n'est mis à jour ;
Si n < m - 1, une erreur est générée.
ROWS
dans la déclaration UPDATE
.-- Accorder une augmentation aux 20 employés les moins bien payés
UPDATE employees
SET salary = salary + 50
ORDER BY salary ASC
ROWS 20;