Hallo,
ich bin noch recht unbedarft was Mysql betrifft und hoffe hier Hilfe bei einem kleinen Problem zu finden.
Ich möchte Benutzer die länger als 100 Tage nicht mehr anwesend löschen. Die Daten sind dabei in 3 Tabellen gespeichert.
hlstats_PlayerUniqueIds
hlstats_Player
hlstats_PlayerNames
und mit "playerId" beknüpft.
Zunächst brauch ich ne Abfrage welche playerId länger als 100 Tage nicht da war.
Code:
SELECT `playerId` FROM hlstats_PlayerNames WHERE TO_DAYS( NOW( ) ) - TO_DAYS( lastuse ) >=100
Nun soll diese playerID aus 3 Tabellen gelöscht werden.
Code:
DELETE `playerId` FROM hlstats_PlayerUniqueIds;
DELETE `playerId` FROM hlstats_Player;
DELETE `playerId` FROM hlstats_PlayerNames;
Das es so nicht funktioniert ist mir klar, es soll nur verdeutlichen um was es geht.
Woran ich nun scheitere, wir bekomm ich es hin das die Daten aus allen 3 Tabellen gleichzeitig gelöscht werden. Der fragliche Syntax
Code:
DELETE t1, t2 FROM t1 INNER JOIN t2 INNER JOIN t3
WHERE t1.id=t2.id AND t2.id=t3.id;
oder
Code:
DELETE FROM t1, t2 USING t1 INNER JOIN t2 INNER JOIN t3
WHERE t1.id=t2.id AND t2.id=t3.id;
wirft bei mir nur Fragen auf. Speziell das
Code:
WHERE t1.id=t2.id AND t2.id=t3.id
Wie genau funktioniert das mit dem *.id bzw. wie müsste es in meinem Fall aussehen.
Gruss Schlesie