Hallo,
ich habe einen kleinen Logikfehler in meinem Script den ich aktuell nicht lösen kann. Ich möchte gerne, dass nur Datensätze die älter als 12 Stunden sind gelöscht werden. Es werden aber immer alle Datensätze gelöscht egal wie alt die sind. Woran liegt das?
Die Spalte `term` wird als DATETIME gespeichert.
Um Missverständnisse vorzubeugen hier eine Ausgabe damit ihr sehen könnt, welche Daten da rauskommen.
=

Vielen Dank für die Hilfe.
ich habe einen kleinen Logikfehler in meinem Script den ich aktuell nicht lösen kann. Ich möchte gerne, dass nur Datensätze die älter als 12 Stunden sind gelöscht werden. Es werden aber immer alle Datensätze gelöscht egal wie alt die sind. Woran liegt das?
PHP:
$sSqlDeleteOldIps = 'DELETE FROM `abc_clicks` WHERE DATE_SUB(`term`, INTERVAL 12 HOUR) < NOW()';
Die Spalte `term` wird als DATETIME gespeichert.
Um Missverständnisse vorzubeugen hier eine Ausgabe damit ihr sehen könnt, welche Daten da rauskommen.
Code:
SELECT * , DATE_SUB( `term` , INTERVAL 12 HOUR ) , NOW( )
FROM `abc_clicks`
WHERE DATE_SUB( `term` , INTERVAL 12 HOUR ) < NOW( )
=

Vielen Dank für die Hilfe.
Zuletzt bearbeitet: