splat
Erfahrenes Mitglied
Hi,
ich habe noch einmal eine Frage...
und zwar habe ich hier folgende Tabelle:
Code:
id | termin (datetime) | erinnerung
-----------------------------------------
1 | 12.07.2007 00:00:0000 | 7
2 | 22.07.2007 00:00:0000 | 20
3 | 30.08.2007 00:00:0000 | 5
4 | 23.11.2007 00:00:0000 | 180
-----------------------------------------
Die Spalte "erinnerung" gibt die Tage vor einem Termin an, an denen man benachrichtigt werden soll. Das Programm läuft jetzt täglich einmal durch, und prüft ob man erinnert werden muss oder nicht..
Soweit so gut.. mit folgendem SQL Statement würde ich jetzt eine einmalige Erinnerung bekommen sobald die Tage für die Erinnerung erreicht wären:
Bei einer Zeit von 180 Tagen wie bei Termin 4 zu sehen ist das allerdings etwas schlecht
Von daher ist jetzt meine Frage.. wie kann ich denn ein SQL Statement schreiben, das zum einen die Benachrichtigung abschickt, sobalt der erste Tag der Erinnerungszeit einsetzt UND jedesmal nach weiteren 30 Tagen, sofern eine Zeit von mehr als 30 Tagen eingetragen wurde, nochmal erinnert. Das muss doch sicher irgendwie gehen
Gruß
Marc
ich habe noch einmal eine Frage...
und zwar habe ich hier folgende Tabelle:
Code:
id | termin (datetime) | erinnerung
-----------------------------------------
1 | 12.07.2007 00:00:0000 | 7
2 | 22.07.2007 00:00:0000 | 20
3 | 30.08.2007 00:00:0000 | 5
4 | 23.11.2007 00:00:0000 | 180
-----------------------------------------
Die Spalte "erinnerung" gibt die Tage vor einem Termin an, an denen man benachrichtigt werden soll. Das Programm läuft jetzt täglich einmal durch, und prüft ob man erinnert werden muss oder nicht..
Soweit so gut.. mit folgendem SQL Statement würde ich jetzt eine einmalige Erinnerung bekommen sobald die Tage für die Erinnerung erreicht wären:
Code:
SELECT id FROM tabelle WHERE GETDATE() = termin - erinnerung
Bei einer Zeit von 180 Tagen wie bei Termin 4 zu sehen ist das allerdings etwas schlecht

Von daher ist jetzt meine Frage.. wie kann ich denn ein SQL Statement schreiben, das zum einen die Benachrichtigung abschickt, sobalt der erste Tag der Erinnerungszeit einsetzt UND jedesmal nach weiteren 30 Tagen, sofern eine Zeit von mehr als 30 Tagen eingetragen wurde, nochmal erinnert. Das muss doch sicher irgendwie gehen

Gruß
Marc