Bird: MYSQL SELECT zwischen Datum

Hallo,

ich habe folgende Frage:
Eine Tabelle mit 3 Spalten.
1 Spalte - date
2 Spalte - date
3 Spalte - varchar(150)

Ich möchte nun einen Selct befehlt habe der folgendes macht
WHERE 1 Spalte => datumheute AND 2 Spalte =< datumheute

Gibt es soetwas für die Datumsfunktion?

Danke

Bird

  1. Grüße,

    Gibt es soetwas für die Datumsfunktion?

    bockt between?
    MFG
    bleicher

    --
    __________________________-

    FirefoxMyth
    1. Hallo bleicher,

      ich habe probiert:
      SELECT * FROM test WHERE datum_start >= '2011-01-26' das klappt soweit aber
      SELECT * FROM test WHERE datum_start >= '2011-01-26' AND datum_stop <= '2011-01-26'
      führt zu null Ergebnissen.

      Habe ich den Code falsch verstanden?

      Bird

      1. Hi,

        ich habe probiert:
        SELECT * FROM test WHERE datum_start >= '2011-01-26'
        das klappt soweit

        Und liefert Datensätze mit welchen Inhalten in der Spalte datum_stop?

        SELECT * FROM test WHERE datum_start >= '2011-01-26' AND datum_stop <= '2011-01-26'
        führt zu null Ergebnissen.

        Hast du denn einen Eintrag in der Datenbank, der morgen startet *und* stoppt?

        MfG ChrisB

        --
        RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
        1. Hallo

          Hi,

          ich habe probiert:
          SELECT * FROM test WHERE datum_start >= '2011-01-26'
          das klappt soweit

          Und liefert Datensätze mit welchen Inhalten in der Spalte datum_stop?

          »»
          Ein beispiel Inhalt wäre 2011-02-10.

          SELECT * FROM test WHERE datum_start >= '2011-01-26' AND datum_stop <= '2011-01-26'
          führt zu null Ergebnissen.

          Hast du denn einen Eintrag in der Datenbank, der morgen startet *und* stoppt?

          Ja, das wäre möglich.

          MfG ChrisB

          Kurz noch zur Erklärung ich möchte feststellen ob der Tag heute größer oder gleich "datum_start" und kleiner oder gleich "datum_stop" ist.

          Danke Bird

          1. Hallo,

            SELECT * FROM test WHERE datum_start >= '2011-01-26' AND datum_stop <= '2011-01-26'

            Kurz noch zur Erklärung ich möchte feststellen ob der Tag heute größer oder gleich "datum_start" und kleiner oder gleich "datum_stop" ist.

            Dann tu das doch einfach. Im Moment suchst du danach ob heute größer oder gleich datum_stop ist.

            Gruß
            alex

          2. Hallo Bird,

            Kurz noch zur Erklärung ich möchte feststellen ob der Tag heute größer oder gleich "datum_start" und kleiner oder gleich "datum_stop" ist.

            Und warum fragst du die Datenbank dann das Gegenteil? Und was hat dir an dem von bleicher schon vorgeschlagenen BETWEEN nicht gefallen?

            Gruß,
            Tobias

          3. Hi,

            Und liefert Datensätze mit welchen Inhalten in der Spalte datum_stop?
            »»
            Ein beispiel Inhalt wäre 2011-02-10.

            SELECT * FROM test WHERE datum_start >= '2011-01-26' AND datum_stop <= '2011-01-26'
            führt zu null Ergebnissen.

            Hast du denn einen Eintrag in der Datenbank, der morgen startet *und* stoppt?
            Ja, das wäre möglich.

            Der mit dem oben erwähnten Inhalt 2011-02-10 in der Spalte datum_stop wäre zumindest keiner von denen.

            MfG ChrisB

            --
            RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
          4. Hallo,

            Ein beispiel Inhalt wäre 2011-02-10.

            SELECT * FROM test WHERE datum_start >= '2011-01-26' AND datum_stop <= '2011-01-26'
            führt zu null Ergebnissen.

            Kurz noch zur Erklärung ich möchte feststellen ob der Tag heute größer oder gleich "datum_start" und kleiner oder gleich "datum_stop" ist.

            dann ist Deine Abfragelogik gerade falsch herum. Außerdem ist dies ein Fall für BETWEEN ... AND, worauf bleicher bereits hinwies:

            SELECT  
                *  
            FROM  
                test  
            WHERE  
                [link:http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_curdate@title=CURDATE()] BETWEEN datum_start AND datum_stop
            

            Freundliche Grüße

            Vinzenz