Maison >base de données >tutoriel mysql >Comment supprimer efficacement les 1 000 premières lignes d'une table SQL Server 2008 ?
Suppression des 1 000 premières lignes d'une table SQL Server 2008
Dans SQL Server 2008, vous pouvez purger efficacement les 1 000 premiers enregistrements d'une table en utilisant une combinaison d’une expression de table commune (CTE) et d’une instruction delete ultérieure. Voici comment cela fonctionne :
Requête problématique originale :
Le code que vous avez initialement tenté supprime toutes les lignes du tableau car il se compose de deux instructions distinctes : une suppression suivie de une sélection. L'instruction select ne spécifie pas de critère de classement, ce qui entraîne la suppression de toutes les lignes.
Code corrigé à l'aide de CTE :
Pour résoudre ce problème, nous utilisons un CTE nommé « CTE » pour sélectionner les 1 000 premières lignes par ordre croissant en fonction de la colonne « a1 ». L'instruction de suppression suivante cible ensuite le CTE, garantissant que seuls ces enregistrements spécifiques sont supprimés :
;WITH CTE AS ( SELECT TOP 1000 * FROM [mytab] ORDER BY a1 ) DELETE FROM CTE
En employant cette méthode, vous pouvez supprimer efficacement le nombre souhaité de lignes de la table sans affecter les enregistrements restants.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!