Problem mit DB-Select

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

  • Problem mit DB-Select

    Hallo,

    ich habe wieder mal Probleme mit einem Select.

    Ich habe 1 Tabelle mit folgenden Feldern:
    AnfNr / RKZ / ObjNr / Angebotspreis / UebermitDatum

    Als Beispiel - Datensätze habe ich:
    1 / 923 / 678 / 2000 / 2004-10-01
    2 / 923 / 678 / 2500 / 2004-10-05
    3 / 923 / 680 / 1000 / 2004-10-04
    4 / 923 / 680 / 1000 / 2004-10-09
    5 / 923 / 678 / 2700 / 2004-10-06
    6 / 923 / 678 / 2700 / 2004-10-02
    7 / 923 / 680 / 1200 / 2004-10-07

    Nun möchte ich für jede ObjNr die Anzahl der Angebotspreisänderungen
    (innerhalb der letzten 30 Tage).
    Dies wären für ObjNr 678 - 2 Preisänderungen, für ObjNr 680 - 1
    Preisänderung.

    Mit nachfolgendem Select müßte ich mit SUM doch diese Anzahlen erhalten.
    Aber leider ist dies nicht so. Sieht da jemand den Fehler?

    $result=mysql_query("
    select *, COUNT(DISTINCT Angebotspreis) as SUM from tabelle3 where
    (UebermitDatum >= CURDATE() - INTERVAL 30) and (RKZ = '923') group by
    ObjNr");
    ")

    Ausgabe mit:
    echo "".mysql_result($result, $i, "SUM")."";

  • #2
    fehlermeldung?

    $result=mysql_query('your query goes here') or die(mysql_error());
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      ich habe einen dummen Fehler erkannt, habe aus Versehen ein Pünktchen geschrieben mit
      echo "".mysql_result($result, $i, "SUM.")."";

      so kann natürlich keine Ausgabe erfolgen. Ich habe dies korrgiert, so daß nun eine korrekte Ausgabe erfolgt, jedoch steht da wo eine 0 stehen sollte eine 1 und da wo eine 1 stehen sollte ein 2, d.h. es wird jeweils eine Einheit zuviel addiert. Woran kann dies nun liegen?

      Kommentar


      • #4
        klar muß dies 1 geben, da es ja immer einen Preis gibt, habe jetzt einfach

        ....select COUNT(DISTINCT Angebotspreis)-1 as SUM ....

        geschrieben und nun klappts.

        Kommentar

        Lädt...
        X