Supprimer membres inactif depuis X temps

Siriusdu51000
Invité n'ayant pas de compte PHPfrance

29 sept. 2010, 09:32

Bonjour,

j'ai une base de données comprenant 12500 membres et j'aimerais y faire du ménage à l'aide d'une requète.

Sur 3 tables en faites.

La première : Les membres qui sont inactif depuis X temps (donc supprimer leurs comptes)

La deuxième : Les personnages associé aux membres

La troisième : Les équipements associé aux personnages

En clair, dès que je supprime un membre, cela supprime aussi les personnages et équipement associé

Je pense qu'il faut que je fasse cela dans un while pour supprimer tout les membres répondant à mon critère (par exemple, 2 mois d'inactivitée).

Pour info, il y a un champ (date) qui s'update à chaque fois qu'il se connecte.

Voilà, si quelqu'un pouvait m'aider, ce serait super sympa car je ne trouve pas la soluce :(

Merci beaucoup.

ViPHP
xTG
ViPHP | 7331 Messages

29 sept. 2010, 09:47

Non tu peux faire cela en une seule requête et sans boucle.
DELETE FROM membres WHERE date_connexion < NOW() - X
Avec X le nombre de jours d'inactivité que tu supportes.

Après il ne reste qu'à faire les jointures sur les deux autres tables pour supprimer tous les enregistrements correspondant au membre.