Hej, Borde fungera med: He he... här kommer årets petitess (kunde inte låta bli). Borde väl snarare vara 182 eller 183 (som 6 månader borde snitta på). Jag tänkte nog inte alls när jag skrev det där... Nu vet jag inte vad du har för slags webbapplikation, Hassan, men har du tänkt på att du kan få problem om det finns referenser till dessa medlemmar i andra tabeller? hej, det är lugnt, det finns inga referrenser i andra tabeller. Man kan också göra så här Svarar väldigt sent, men istället för att skapa ny tråd...Ta bort 6 månader gamla medlemmar
Jag har date på min mysql databas, fältet heter last_logindate
Jag vill köra en select sats på att radera alla medlemmar som inte loggat in på över 6 månader.
Tacksam för svar.
HassanSv: Ta bort 6 månader gamla medlemmar
DELETE FROM tabell WHERE DATEDIFF(NOW(), last_logindate) > 180
/JohanSv:Ta bort 6 månader gamla medlemmar
Johan ska det inte vara 181, som minsta "gemensamma", för en 6 månaders period?
Vem vet endag kanske gör stor skillnad... :-)
Har jag fel kan du ge mig en virtuell örfil, för att jag tagit upp din tid med sådana petitesser. ;-)
/HåkanSv: Ta bort 6 månader gamla medlemmar
/JohanSv: Ta bort 6 månader gamla medlemmar
Sv:Ta bort 6 månader gamla medlemmar
Tack för era svar.Sv: Ta bort 6 månader gamla medlemmar
<code>
DELETE FROM tabell WHERE NOW() - INTERVAL 6 MONTH > last_logindate
</code>
eller vända på det
<code>
DELETE FROM tabell WHERE last_logindate + INTERVAL 6 MONTH < NOW()
</code>
båda tar i beaktande också tiden...Sv:Ta bort 6 månader gamla medlemmar
Min kod: <code>
Connect.Execute("DELETE FROM medlemmar WHERE DATEDIFF(NOW(), signupdate) > 365")
</code>
Funkar bra, så länge signupdate har formen Date()
Men om ja skulle vilja byta ut signupdate mot datum istället som har formen Now() istället?