Anzahl Tage zwischen zwei DATETIME



  • Hallo zusammen, wie kann ich bspw. die Anzahl vergangener Tage zwischen 2 DATETIME's berechnen, oder die Anzahl Monate, oder die Anzahl Stunden??

    Lg Ishildur





  • @Dasd
    Hast du eigentlich meine Frage gelesen?
    Die MySQL und PHP - Referencen kenne ich bestens! 😡

    Es ist schon erstaunlich, bisher konnte mir diese Frage noch überhaupt niemand beantworten, eigentlich eigenartig... 🙄



  • Ishildur schrieb:

    Die MySQL und PHP - Referencen kenne ich bestens! 😡

    Ziemlich offensichtlich nicht, denn in obigem Link steht die Antwort auf deine Frage.



  • Wo denn? DATE_SUB kann IMHO nicht zwei DATETIME voneinander subtrahieren, sondern lediglich einen bestimmten INTERVAL von einem DATETIME. Und selbst wenn Sie es könnte, dann hätte ich einen neuen DATETIME und nicht die Anzahl vergangener Tage resp. Wochen resp. Stunden resp...

    Die MySQL und PHP - Referenzen kenne ich bestens!

    Damit wollte ich sagen, dass ich den Standort dieser Referencen bestens kenne, ich schreibe doch nicht in ein Forum und nerve die Leute, wenn ich nicht vorher die API - Referenz studiert habe!
    Ich finde es einfach ziemlich hohl, dass die Antwort auf eine Frage ein Link zu einer Funktionsreferenz sein soll.

    Wenn dich jemand in der Schule nach der Lösung einer mathematischen Aufgabe fragt, drückst du ihm doch auch nicht wortlos das Mathematikbuch in die Hand und wendest dich wieder ab, oder was? 🙄



  • Ishildur schrieb:

    Damit wollte ich sagen, dass ich den Standort dieser Referencen bestens kenne, ich schreibe doch nicht in ein Forum und nerve die Leute, wenn ich nicht vorher die API - Referenz studiert habe!

    Dann bist du allerdings eine sehr löbliche Ausnahme in der Beziehung. Die meisten machen das nämlich offenbar nicht. Ist ja "einfacher" in nem Forum zu fragen als selber nachzuschlagen.

    Wenn dich jemand in der Schule nach der Lösung einer mathematischen Aufgabe fragt, drückst du ihm doch auch nicht wortlos das Mathematikbuch in die Hand und wendest dich wieder ab, oder was?

    Wenn jemand was Mathematisches fragt, dann ja, schon. Auch wenn ich kein Mathebuch zur Hand habe. Lehrbücher a la Schule hat man so selten in der Uni 🤡
    Aber der Punkt ist ganz einfach, dass es ein Unding ist, von anderen Lösungen zu erwarten. Wennst mich etwas fragst, gestern z.B. eine bzgl Prolog (ich erwähn das als "Beweis", dass ich auch nett und hilfreich sein kann :D), dann würde ich dir eher einen Lösungsweg liefern - keine Lösung.
    Und das ist der nächste Punkt, du weißt jetzt, dass obiger Link die Lösung beinhaltet. Aber statt dich hinzusetzen und ihn dir nochmal genauer anzuschauen, postest du lieber nochmal und verlangst explizit eine Lösung des Problems. Also bitte ...

    Aber von mir aus, ich lese mal aus dem Link vor 😉

    TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)

    Returns the integer difference between the date or datetime expressions datetime_expr1 and datetime_expr2. The unit for the result is given by the interval argument. The legal values for interval are the same as those listed in the description of the TIMESTAMPADD() function.

    mysql> SELECT TIMESTAMPDIFF(MONTH,'2003-02-01','2003-05-01');
    -> 3
    mysql> SELECT TIMESTAMPDIFF(YEAR,'2002-05-01','2001-01-01');
    -> -1

    dazu

    TIMESTAMPADD (...) interval argument, which should be one of the following values: FRAC_SECOND, SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QUARTER, or YEAR.



  • Ishildur schrieb:

    @Dasd
    Hast du eigentlich meine Frage gelesen?

    Wenn nicht, hätte ich dir wohl nicht diesen Link gegeben. Auch wenn mein weiteres Vorgehen eher aus einem einfachen "-" (das gibt's bei MySQL auch) und der Funktion TO_DAYS bestanden hätte. Die Variante von sarfuan ist selbstverständlich intelligenter und löst auch den zweiten Teil der Frage.

    Und wie bereits gesagt wurde: glaubst du tatsächlich, ich würde etwas posten von dem ich nicht der Meinung wäre, dass es dir helfen würde?



  • @sarfuan
    Ich komme mir irgendwie gerade irgendwie ein wenig klein vor... :p
    Ich bin mehrmals eine Funktion nach der Anderen durchgegangen, aber von TIMESTAMPDIFF höre ich zum ersten Mal. Ein weiteres Beispiel dafür, dass man oft den Wald vor lauter Bäumen nicht mehr sieht!

    @Dasd

    Und wie bereits gesagt wurde: glaubst du tatsächlich, ich würde etwas posten von dem ich nicht der Meinung wäre, dass es dir helfen würde?

    Bei dir ist dies offensichtlich nicht der Fall, aber ich habe des Öfteren erlebt, dass es anscheinend Leute gibt, die eine Frage lesen und dann passiert folgendes: Aha, es hat etwas mit MySQL zu tun, OK posten wir den Link zur MySQL - Referenz. Dabei haben Sie nicht eine Sekunde über die Frage selbst nachgedacht. Im Spiele-/Grafikprogrammierungsforum passiert dies sehr oft, da ist die Antwort auf jede zweite Frage einen Link zur DirectX - API!

    Ich muss mich aber bei dir für mein ungehobeltes Benehmen entschuldigen. Ich hatte ziemlich lange (oder kam es mir nur so vor 😃 ) die MySQL - Referenz durchforstet und keinen Lösungsweg gefunden. Anschliessend hatte ich in dieses Forum gepostet, weil es eigentlich eine ganz generelle Aufgabe ist, welche sicherlich auf welche mit Sicherheit Andere bereits eine Lösung gefunden haben.
    Dann kam tatsächlich eine Antwort und ich klicke voller Erwarung auf den Link... laden... laden... laden... DIE REFERENZSEITE, WELCHE ICH NUN DIE GANZE ZEIT DURCHFORSTET HATTE, da hatte ich ein wenig die Nerven verloren, tut mir leid, Dasd



  • Ishildur schrieb:

    tut mir leid, Dasd

    Entschuldigung angenommen. 🙂

    Werde beim nächsten Mal wohl noch mit angeben, auf was genau in einer Referenz ich mich beziehe. Ein Link auf eine riesige Seite war wohl etwas "unpräzise".


Anmelden zum Antworten