date between

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

  • #16
    @hydrocrocus
    wenn ich mir dein interpretation von INTERVAL so anschaue, würde ich an deiner stelle etwas weniger rot und barsch schreiben und statt dessen lieber mal im handbuch blättern, den link kennst du ja anscheinend...
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #17
      PHP-Code:
      $result mysql_query("SELECT * FROM customers WHERE rechper BETWEEN '$date3' + INTERVAL 30 DAY AND '$date3' - INTERVAL 70 DAY"); 
      so funktioniert es (es gibt KEINE mySQL-Fehlermeldungen mehr), ABER der Datensatz welcher Testweise auf den 2004-01-03 eingetragen wurde, wird dennoch NICHT angezeigt...

      Das Handbuch habe ich mir schon einige male durchgesehen nach einer Lösung, kann aber irgendwie das "Interval" nicht mit meinem Lösungsweg kombinieren...

      übrigens wird auch der Datensatz mit folgendem Code NICHT angezeigt
      PHP-Code:
      $result mysql_query("SELECT * FROM customers WHERE rechper BETWEEN '$date3' - INTERVAL 30 DAY AND '$date3' + INTERVAL 70 DAY"); 
      @hydrococcus
      Danke, das Manual kenne ich...

      Grüsse
      binaer

      EDIT:
      Falsche Abfrage gepastet, sorry

      EDIT:
      2. Edit: Rechnungen der nächsten 30 Tage werden angezeigt... Rechnungen der vergangen 70 Tage NICHT!
      Zuletzt geändert von binaer; 24.02.2004, 16:00.

      Kommentar


      • #18
        poste mal das statement mit den richtigen grenzen
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #19
          PHP-Code:
          $result mysql_query("SELECT * FROM customers WHERE rechper BETWEEN '$date3' + INTERVAL 30 DAY AND '$date3' - INTERVAL 70 DAY"); 
          Rechnungen der nächsten 30 Tage werden angezeigt... Rechnungen der vergangen 70 Tage NICHT!

          Kommentar


          • #20
            PHP-Code:
            $sql="SELECT * 
            FROM customers 
            WHERE rechper BETWEEN '
            $date3' - INTERVAL 70 DAY AND '$date3' + INTERVAL 30 DAY";
            echo 
            $sql;
            $result=mysql_query($sql); 
            was passiert da?
            Ich denke, also bin ich. - Einige sind trotzdem...

            Kommentar


            • #21
              Ich wollte nicht barsch sein. sorry wenns so rübergekommen ist.
              das mit dem INTERvAL() steht so in:

              MYSQL kurz & gut ; O'Reillys; Seite 83

              das ist nicht meine interpretation. ich wollte damit nur zu verstehen geben,
              das dort eventuell der fehler liegen könnte.
              Zuletzt geändert von hydrococcus; 24.02.2004, 16:08.

              Wo kämen wir hin, wenn jeder sagte: Wo kämen wir hin? und keiner ginge, um zu sehen, wohin wir kämen, wenn wir gingen?

              Kommentar


              • #22
                SELECT * FROM customers WHERE rechper BETWEEN '2004-03-25' - INTERVAL 70 DAY AND '2004-03-25' + INTERVAL 30 DAY
                Offenbar werden nun die Datensätze der letzten 30 Tage und der nächsten 70 Tage angezeigt, möglich?!

                Grüsse
                binaer

                P.S. teste in 'ner Stunde weiter...

                Kommentar


                • #23
                  also, es ist definitv so, dass es nun die Einträge der nächsten 70 Tage und der letzten 30 Tage, nur warum kapier ich nicht...

                  PHP-Code:
                  $sql="SELECT * FROM customers WHERE rechper BETWEEN '$date3' - INTERVAL 70 DAY AND '$date3' + INTERVAL 30 DAY"
                  und so findet er gar keine Ergebnise mehr:

                  PHP-Code:
                  $sql="SELECT * FROM customers WHERE rechper BETWEEN '$date3' + INTERVAL 70 DAY AND '$date3' - INTERVAL 30 DAY"
                  Any Ideas?

                  Grüsse
                  binaer

                  Kommentar


                  • #24
                    Du musst darauf achten das in der
                    WHERE xxx BETWEEN yyy AND zzz

                    yyy kleiner als zzz ist !

                    $sql="SELECT * FROM customers WHERE rechper BETWEEN '$date3' - INTERVAL 30 DAY AND '$date3' + INTERVAL 70 DAY ";


                    Dies liegt daran das das MySQL bei der BETWEEN Klausel nur nach oben zählt.
                    Vergleiche
                    $a= 1; $b =3;
                    while( $a<= $b) { $a++;echo $a }

                    $a=3; $b=1;
                    while( $a<= $b) { $a++;echo $a }

                    Kommentar

                    Lädt...
                    X