← Retour à la référence SQL

DELETE

Catégorie : modification

Supprime une ou plusieurs lignes d'une table. La clause WHERE permet de spécifier quelles lignes supprimer. Sans WHERE, toutes les lignes sont supprimées.

📝 Syntaxe

DELETE FROM table WHERE condition

💡 Exemples

DELETE FROM élèves WHERE age > 20
X lignes supprimées
DELETE FROM commandes WHERE statut = 'annulée'
X lignes supprimées

🎯 Exercice

Supprimez tous les produits dont le stock est à 0 depuis plus d'un an

Voir la solution
DELETE FROM produits WHERE stock = 0 AND date_stock < DATE_SUB(NOW(), INTERVAL 1 YEAR)

⚠️ Pièges courants

  • Oublier la clause WHERE (supprime TOUTES les lignes)
  • Supprimer des lignes référencées par d'autres tables (violation de contrainte)
  • Condition WHERE trop large qui supprime trop de données
Pixel