Fragensteller: mysql Gegenstück zu FROM_UNIXTIME?

Hi,

ich habe in einer Datenbank ein Datum leider als Stringfeld eingetragen.

Kann ich in einer Query daraus einen Unix Zeitstempel machen oder gibt es eine andere Möglichkeit, direkt per Query im WHERE-Teil mit einem Unix Timestamp zu vergleichen?

VG, Fragensteller

  1. Kann ich in einer Query daraus einen Unix Zeitstempel machen

    Ja.

    oder gibt es eine andere Möglichkeit, direkt per Query im WHERE-Teil mit einem Unix Timestamp zu vergleichen?

    Ja.

    Beides findest du unter Date and Time Functions

    1. Beides findest du unter Date and Time Functions

      Zitat: date may be a DATE string, a DATETIME string, a TIMESTAMP, or a number in the format YYMMDD or YYYYMMDD.

      Mein Datum ist aber in dieser Art: 24.07.2010

      Kann man auch dieses Problem gleich in der Query lösen?

      Grüße, Fragensteller

      1. Mein Datum ist aber in dieser Art: 24.07.2010

        Kann man auch dieses Problem gleich in der Query lösen?

        Es gibt kaum etwas, was SQL nicht kann - viele SQL-I
        SUBSTRING

        MySQL ist "fast" turing-vollständig, es gibt kaum etwas was du da nicht in einer Abfrage lösen könntest.

        1. Mein Datum ist aber in dieser Art: 24.07.2010

          Kann man auch dieses Problem gleich in der Query lösen?

          Es gibt kaum etwas, was SQL nicht kann - viele SQL-I
          SUBSTRING

          Ich habe mir die Seite durchgelesen, aber finde nicht das Gesuchte.

          SUBSTRING_INDEX(str,delim,count) kann das anscheinend nicht.

          Habe ich das Entscheidende überlesen oder hast Du Dich in der Funktion vertan?

          Gruß

          1. Tach auch.

            Habe ich das Entscheidende überlesen oder hast Du Dich in der Funktion vertan?

            Nimm dein String-Feld mit Substring auseinander, setze ihn mit CONCAT zu einem neu sortierten String zusammen, und lassen dann darüber die Funktion UNIX_TIMESTAMP laufen.

            Das ist alles plain&simple. Wie würdest du es denn in einer Programmiersprache _deiner_ Wahl machen? Überlege dir dies und setze es dann 1:1 in SQL um, die Hilfsmittel wurden dir genannt.

            Bis die Tage,
            Matti

      2. Hi!

        Beides findest du unter Date and Time Functions
        Zitat: date may be a DATE string, a DATETIME string, a TIMESTAMP, or a number in the format YYMMDD or YYYYMMDD.

        Mein Datum ist aber in dieser Art: 24.07.2010
        Kann man auch dieses Problem gleich in der Query lösen?

        Diese deutsche Schreibweise eignet sich für Datumsoperationen ganz schlecht. YYYY-MM-DD wäre besser gewesen.

        Ist dir beim Durchsehen der empfohlen Seite mit den Datums- und Zeit-Funktionen die Funktion STR_TO_DATE() nicht aufgefallen?

        Lo!

        1. Ist dir beim Durchsehen der empfohlen Seite mit den Datums- und Zeit-Funktionen die Funktion STR_TO_DATE() nicht aufgefallen?

          Nein, nicht gesehen.
          Aber damit ist es ja wirklich simpel.
          Dank Dir!