select abfrage mit sortierung geht nicht

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

  • select abfrage mit sortierung geht nicht

    Hallo Forum,
    ich habe folgendes Problem bei einer Datenbankanfrage. Und zwar möchte ich für jede Produktgruppe einer Datenbank deren Anzahl und den jeweils günstigsten Preis holen. Momentan mach ich das folgendermaßen:

    PHP-Code:
    SELECT preisartCOUNT( * ) counted
    FROM database
    GROUP BY 
    `art
    ORDER BY `preisASC 
    Also ich bekomme alle Produktarten, deren Preis und deren Anzahl. Bei dem Preis stimmt es aber nicht. Ich bekomme immer den ersten Preis aus der Datenbank und nicht den günstigsten. Was mache ich falsch? Oder ist der Ansatz ein falscher?

    Danke für Eure Hilfe
    Gruss
    RON

  • #2
    Code:
    SELECT MIN(preis) as PreisMin, art, COUNT( * ) as counted
    FROM database
    GROUP BY `art` 
    ORDER BY `preis` ASC
    Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
    Schön - etwas Geschichte kann ja nicht schaden.
    Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

    Kommentar


    • #3
      Hallo,
      danke für Deine schnelle Antwort. Nun habe ich aber weitere Probleme, wenn ich mehrere Daten möchte, wie Artikelnummer usw.

      Mir wird zum Beispiel immer nur die erste Artikelnummer zu diesem Produkt in der Datenbank gezeigt. Ich möchte aber die passende Artikelnummer zum günstigsten Preis.

      PHP-Code:
      SELECT MIN(preis) as PreisMinart,art_noCOUNT( * ) as counted
      FROM database
      GROUP BY 
      `art
      ORDER BY `preisASC 
      Habt Ihr da iregendwelche Ideen?

      Vielen Dank und viele Grüsse
      RON

      Kommentar


      • #4
        Hi rlbek,

        wie, was??? Um diese Zeit solltest du ins Bett gehen

        Mir wird zum Beispiel immer nur die erste Artikelnummer zu diesem Produkt in der Datenbank gezeigt. Ich möchte aber die passende Artikelnummer zum günstigsten Preis.
        Was ist dein Ziel als Beispiel? Du gibst z. B. Hundefutter: 10 Euro ein und bekommst ne Liste mit allen Artikelnummern, die 10 Euro kosten?

        Bemerkungen:
        $produkt und $preis kommen z. B. von einem Formular.
        table = Name deiner Tabelle.


        PHP-Code:
        SELECT MIN(preis) as PreisMinart as Artikel ,art_no as Artikelnummer from table where produkt='$produkt' and preis='$preis' order by 'art_no' asc 
        Wenn deine Daten in unterschiedlichen Tabellen stehen, dann halt die Abfrage über deine Tabellen erweitern - ändern.

        Probiers mal so, oder meintest du etwas anderes?

        Gruß
        Zuletzt geändert von fan-maec; 30.03.2006, 11:03.

        Kommentar


        • #5
          Hallo fan-maec,

          danke für Deine Antwort. Speziell geht es um Folgendes, ich möchte mir den günstigsten Preis eines bestimmten Produktes anzeigen lassen, dazu die jeweilige Artikelnummer und die Anzahl, wieviel mal das Produkt in der Datenbank ist.

          zum Beispiel : Hundefutter 16.99 ART123456 4x
          Butter 0.79 ART5678 2x


          Nun, dies funktioniert auch teilweise mit meiner Abfrage. Die Anzahl stimmt, der Preis stimmt und das Produkt stimmt. Nun holt er aber bei der Artikelnummer immer den ersten Wert aus der Datenbank und nich den zum Preis dazugehörigen .

          Ich habe im Manual schon gesucht, hatter aber leider keinen Erfolg.

          Dankenochmal für Deine Hilfe
          Gruss
          RON

          Kommentar


          • #6
            ich weiß schon was du meinst - steh aber diesbezüglich grad selber auf dem Schlauch - nen Thread hierzu gabs jedenfalls schonmal, find ihn nur beim besten Willen nicht
            Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
            Schön - etwas Geschichte kann ja nicht schaden.
            Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

            Kommentar


            • #7
              Hallo rlebek

              SELECT
              [...]
              art,
              art_no,
              [...]

              group by
              art,
              art_no

              http://www.php-resource.de/tutorials/read/44/10/

              Kommentar


              • #8
                Hi,

                kommt auf den Aufbau deiner Tabelle an.

                Hast du es so wie im thread beschrieben mit Datum aufgebaut
                - oder
                hast du ein Feld: Bestand in deiner Tabelle. Dementsprechend muss die
                sql-Abfrage aufgebaut werden.

                Gruß

                Kommentar

                Lädt...
                X