Mysql Datum vielfaches von 3 ... und ich bin zu blööd ....
Superbarde
- datenbank
Hallo ich weiss ich weiss ich bin unwürdig ...
aber ich versuche mich nun schon ne weile damit folgendes herauszufinden ...
ich hätte gerne ne mysqlabfrage in der überpfrüft wird ob ein Datum in der Tabelle ein vielfaches von 3 Monaten von einem anderen Datum (z.B. heute) ist ... bzw umgekehrt
also wenn der Wert in der Tabelle 2008-01-01 ist sollte ein ergebnis bei 2008-03-01, 2008-06-01, 2008-09-01, ... usw ausgegeben werden ...
hier mein falscher Ansatz denke ich ...
mit $addmonth kommt das andere Datum ins Spiel ...
Mir fehlt nur die Funktion is_integer in der Mysqlabfrage ... hab nix gefunden was das machen könnte ...
IS_INTEGER((DATE_ADD(CURRENT_DATE(), INTERVAL ".$addmonth." MONTH) - DATE_ADD(erstabbuchung, INTERVAL 0 MONTH))%3)
Moin
Schau mal hier
Gruß Bobby
Moin
Schau mal hier
Gruß Bobby
Nein das is es leider nich oder ich kapiers nich ... einfach nur 3 Monate vor oder zurück is es ja nich das wär einfach ...
Es müssen halt immer 3 Monate oder ein vielfaches von 3 Monaten abstand sein
Es müssen halt immer 3 Monate oder ein vielfaches von 3 Monaten abstand sein
Hi Superbarde,
verstehe ich Deine Frage richtig, dass Du keine Daten generieren willst in Abhaengigkeit von Deinem Bezugsdatum, sonderen existierende Daten aus eine Tabelle lesen, falls sie einen (3*n)-Monatsabstand von Deinem Bezugsdatum haben?
Also erstmal haste Dich uebrigens ein bissi verrechnet, denke ich, denn 1 + 3 gibt leider... nicht 3 ;-)
Ich wuerde das so machen: Der Ausdruck 12 * YEAR(Datum) + MONTH(Datum) gibt Dir die Anzahl der Monate eines Datums (seit dem Jahr 0). Was Du dann willst ist
select ...
where
(
12 * YEAR(Datum) + MONTH(Datum) -
(12 * YEAR(Bezugsdatum) + MONTH(Bezugsdatum))
) MOD 3 = 0
and DAY(Datum) = DAY(Bezugsdatum);
Oder?
(Ich hab das jetzt aber nur so aus dem Handgelenk geschrieben, schau die Funktionen lieber alle nochmal nach, irgendwas wird schon syntaktisch falsch sein...).
Viele Gruesse,
der Bademeister
so habs jetzt vielen Dank ... man ick wusstes doch ... ick bin zu blöd ...
für alle Helfer gibts auch noch zum Dankeschön n bissle Musik für umsonst ...
unter www.shearer.de gibts 2 Alben als kostenlosen Download ...
Danke und Chiao!
echo $begrüßung;
ich hätte gerne ne mysqlabfrage in der überpfrüft wird ob ein Datum in der Tabelle ein vielfaches von 3 Monaten von einem anderen Datum (z.B. heute) ist ... bzw umgekehrt
also wenn der Wert in der Tabelle 2008-01-01 ist sollte ein ergebnis bei 2008-03-01, 2008-06-01, 2008-09-01, ... usw ausgegeben werden ...
Hast du auch Tage > 28? Denn für diese Tage gibt es ja nicht in jedem Monat eine Entsprechung.
Gehen wir mal davon aus, dass du den Tagesvergleich bereits erledigt hast und nur noch Monate zu vergleichen hast. Dann kann die Funktion PERIOD_DIFF() zusammen mit einer Modulo-Operation helfen.
NOT PERIOD_DIFF(DATE_FORMAT($heute, '%Y%m'), DATE_FORMAT(datumsfeld, '%Y%m')) % 3
Alle drei Monate ergibt die Modulo-Operation 0, was durch das NOT zum true wird.
echo "$verabschiedung $name";
ECHO "DANKE DANKE DANK".einengrosseverbeugungmach('aufdiekniefall')." und nochmal DANKE!"