Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Unerklärlicher Fehler bei Timediff

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] Unerklärlicher Fehler bei Timediff

    SELECT TIMEDIFF (`to_hour`, `from_hour`) AS duration FROM overtime
    so lautet die simple Abfrage. Aber ich bekomme immer wieder diese Fehlermeldung:
    #1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '(`to_hour`, `from_hour`) AS duration FROM overtime
    from_hour, to_hour sind vom Type Datetime. Was könnte der Fehler sein?


  • #2
    Nimm mal das Leerzeichen hinter TIMEDIFF heraus.
    --

    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
    Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


    --

    Kommentar


    • #3
      das macht leider keinen unterschied, es ist der selbe fehler

      Kommentar


      • #4
        Es ist, wie ich es annahm. Die MySQL-Version auf dem ich es zu erst getestet habe, ist schon etwas betagt.

        -MySQL-Client-Version: 4.0.18

        mit MySQL-Client-Version: 5.1.41 geht es wunderbar.

        Kommentar


        • #5
          Ich kann den Fehler nicht nachvollziehen (MySQL 5.1.44)...

          Code:
          mysql> CREATE TABLE overtime (
              ->  to_hour TIMESTAMP NOT NULL,
              ->  from_hour TIMESTAMP NOT NULL
              -> );
          Query OK, 0 rows affected (0.13 sec)
          
          mysql> SELECT TIMEDIFF (`to_hour`, `from_hour`) AS duration FROM overtime;
          Empty set (0.03 sec)
          
          mysql>
          Dein SQL läuft bei mir sauber durch.

          Grüße
          Thomas

          Kommentar


          • #6
            mit MySQL-Client-Version: 5.1.41 geht es wunderbar.

            Kommentar


            • #7
              Was für ein Format haben deine Spalten für `to_hour` && `from_hour`
              UPS sorry den letzten Post von nuna nicht gesehn.
              "My software never has bugs, it just develops random features."
              "Real programmers don't comment. If it was hard to write, it should be hard to understand!"

              Kommentar


              • #8
                `to_hour` && `from_hour` sind in DATETIME.

                Nur fürs Record, für diejenigen, die irgendwann auf dasselbe Problem stoßen und, wie ich, mysql nicht updaten dürfen:
                SEC_TO_TIME( (TO_DAYS( `to_hour` ) *24 *3600 + TIME_TO_SEC( `to_hour` ) ) - ( TO_DAYS( `from_hour` ) *24 *3600 + TIME_TO_SEC( `from_hour` ) ))
                macht exakt das selbe.

                Kommentar

                Lädt...
                X