Maison  >  Article  >  base de données  >  Comment supprimer plusieurs données de base de données de tables dans MySQL

Comment supprimer plusieurs données de base de données de tables dans MySQL

coldplay.xixi
coldplay.xixioriginal
2020-09-03 13:51:268158parcourir

Méthode MySQL pour supprimer les données de plusieurs tables : établissez d'abord une relation de suppression en cascade entre les deux tables ; puis supprimez les données d'une table via l'instruction [delete t1,t2 from t1,t2 which condition], juste supprimer les données associées dans une autre table en même temps.

Comment supprimer plusieurs données de base de données de tables dans MySQL

[Recommandations d'apprentissage associées : tutoriel mysql(vidéo)]

Méthode MySQL pour supprimer les données de plusieurs tables de la base de données :

L'utilisation simple de l'instruction delete ne peut pas effectuer une suppression de données multi-tables, mais une suppression en cascade peut être établie. En établissant une relation de suppression en cascade entre deux tables, vous pouvez supprimer les données d'une table et supprimer les données associées dans l'autre table en même temps.

delete t1,t2 from t1,t2 where 条件

1. Supprimez tous les enregistrements de la table de données t1 qui ont des valeurs d'ID correspondantes dans la table de données t2

DELETE t1 FROM t1,t2 WHERE t1.id=t2.id 或 DELETE FROM t1 USING t1,t2 WHERE t1.id=t2.id

2 De la table de données t1, supprimez tous les enregistrements de la table de données. t2 Recherchez les enregistrements correspondants dans t2 et supprimez-les

DELETE t1 FROM t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL 或 DELETE FROM t1,USING t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL

3 Recherchez les données des mêmes enregistrements des deux tables et supprimez les données dans les deux tables

DELETE t1,t2 from t1 LEFT JOIN t2 ON t1.id=t2.id WHERE t1.id=25

Remarque t1, t2 dans supprimer t1, t2 d'ici ne peut pas être des alias

Par exemple : delete t1,t2 from table_name as t1 left join table2_name as t2 on t1.id=t2.id where table_name.id=25 est incorrect à exécuter dans les données (la version MYSQL n'est pas inférieure à 5.0, c'est ok en 5.0)

L'instruction ci-dessus est réécrite comme

delete table_name,table2_name from table_name as t1 left join table2_name as t2 on t1.id=t2.id where table_name.id=25

Il est faux de l'exécuter dans les données (la version MYSQL est inférieure à 5.0, mais c'est ok en 5.0)


Réfléchissez Pour en savoir plus sur la programmation, faites attention à la rubrique

Formation php !

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn