webForumDet fria alternativet

Delete from where...

Databaser & SQL

4 svar · 261 visningar · startad av toja

Medlem sedan mars 2001218 inlägg
Frågan#1

Jag undrar hur man skriver en mysql_query som deletar allt i databasen som är äldre än säg 25 dagar. Jag har en TIMESTAMP(14) med i tabbellen. Tabbellen heter bors. Så här skrev jag, vad är fel, hur kan jag annars göra:

mysql_query("DELETE FROM bors WHERE date_time 'to_days(now()) - to_days(date_time) > 25'");

Hoppas nån kan hjälpa mig...

------------------
/Toja phpProgrammer

Medlem sedan dec. 19996 721 inlägg
#2

DELETE FROM bors WHERE (TO_DAYS(NOW()) - TO_DAYS(date_time))>25

[r]en liten parentes....

[Redigerat av emission den 04 apr 2001]

Medlem sedan dec. 200012 464 inlägg
#3
mysql_query("DELETE FROM bors WHERE to_days(now()) - to_days(date_time) > 25");

Jag antar att din timestampkolumn heter date_time

Tillägg: Du kan ju alltid testa genom att göra motsvarande select i något queryverktyg.
------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 04 apr 2001]

Medlem sedan juni 20008 205 inlägg
#4

Min version:

DELETE FROM parp WHERE date_time < DATE_SUB(NOW(), INTERVAL 25 DAY);

------------------
Life feeds on life feeds on life feeds on life feeds on life...

Medlem sedan mars 2001218 inlägg
#5

Tack för hjälpen, det fungerar perfekt nu...

------------------
/Toja phpProgrammer

253 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)