Ankündigung

Einklappen
Keine Ankündigung bisher.

COUNT und DISTINCT: Spalteneinträge ausgeben

Einklappen

Neue Werbung 2019

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

  • COUNT und DISTINCT: Spalteneinträge ausgeben

    Hallo alle zusammen,

    ich habe mal wieder eine Frage.

    In meiner DB habe ich eine Tabelle (tbl_garten) und in dieser eine Spalte
    (obst_gemuese). In dieser Spalte sind folgende Einträge:

    birnen
    aepfel
    kirschen
    kirschen
    aepfel
    aepfel
    birnen

    Nun möchte ich jeden Eintrag einmal ausgeben und dahinter die Anzahl; also so:

    aepfel (3)
    kirschen (2)
    .
    .
    .

    Ich habe es zwar schon geschafft jeweils mit COUNT
    (SELECT obst_gemuese, count(obst_gemuese) FROM tbl_garten GROUP BY obst_gemuese)
    und mit DISTINCT
    (SELECT DISTINCT obst_gemuese FROM tbl_garten ORDER BY obst_gemuese ASC)
    etwas auszugeben ... nun weiß ich nicht, wie man das beides
    "zusammenfügt" !

    Wer kann helfen?

  • #2
    Na das erste ist doch schon was du willst

    SELECT obst_gemuese, count(obst_gemuese)
    FROM tbl_garten
    GROUP BY obst_gemuese
    SORT BY obst_gemuese ASC

    Kommentar


    • #3
      Danke!

      leider geht das nicht so! ich muß: SORT BY obst_gemuese ASC
      rausnehmen, sonst bekomme ich immer eine Fehlermeldung!

      Außerdem wird mir auch nur immer der erste Eintrag angezeigt!

      Ich weiß nicht, was ich falsch mache?

      Kommentar


      • #4
        sonst bekomme ich immer eine Fehlermeldung!
        Welche selbstverständlich der absoluten Geheimhaltung unterliegt.

        Außerdem wird mir auch nur immer der erste Eintrag angezeigt!
        Hää?

        Kommentar


        • #5
          Sorry DiBo33!

          hier mein Quelltext:

          $result = @mysql_query("SELECT obst_gemuese, count(obst_gemuese) FROM tbl_garten GROUP BY obst_gemuese ASC") OR DIE (.....);
          $row = mysql_fetch_array($result);
          echo $row['obst_gemuese'];

          Als Fehlermeldung kommt dann, daß der Datenbankzugriff gescheitert ist (wenn ich SORT BY obst_gemuese ASC stehen lasse).

          Kommentar


          • #6
            Dann betrachte mal dein SQL-String genauer, siehst du irgendwo ein SORT BY?

            Kommentar


            • #7
              Hi DiBo33,

              ich habe es ja auch hier schon weggelassen ... weil mit SORT BY geht es nicht!!!
              ist mir ja auch unheimlich!

              Kommentar


              • #8
                Wie hattest du SORT BY eingebunden, bitte komplett posten.

                Kommentar


                • #9
                  so hatte ich es:

                  $result = @mysql_query("SELECT obst_gemuese, count(obst_gemuese) FROM tbl_garten GROUP BY obst_gemuese SORT BY obst_gemuese ASC") OR DIE (.....);
                  $row = mysql_fetch_array($result);
                  echo $row['obst_gemuese'];

                  Kommentar


                  • #10
                    Vergiss es, gerade aus dem Urlaub und bin noch nicht richtig da.

                    Es heisst natürlich nicht SORT BY sondern ORDER BY, sorry

                    Kommentar


                    • #11
                      Hi DiBo,

                      ist doch nicht weiter schlimm! Mit ORDER BY geht es ...

                      Leider ist da noch folgendes Problem: Ich bekomme nur den
                      ersten Eintrag aus meiner Tabelle angezeigt! Mehr passiert nicht!

                      Kommentar


                      • #12
                        Weil du nur den ersten Eintrag ausliesst.

                        Du musst das Ganze in einer While-Schleife auslesen.

                        http://www.php.net/manual/de/ref.mysql.php

                        Schau dir das Beispiel an.

                        Kommentar


                        • #13
                          hi DiBo,

                          ich probiere das morgen mal aus! danke erst einmal bis hierher!

                          Kommentar


                          • #14
                            hi DiBo,

                            ja, daß geht! Jetzt noch folgende Sache: Wie bekomme ich nun abgefragt, wieoft jeder einzelne Eintrag vorhanden ist? Also z.B. Kirschen (3), Birnen (2) ...

                            Kommentar


                            • #15
                              Entweder mit
                              echo $row['count(obst_gemuese)'];
                              oder über Spalten-Alias

                              SELECT obst_gemuese, COUNT(obst_gemuese) Summe FROM ...

                              echo $row['Summe'];

                              http://tut.php-q.net/mysql.html
                              ff

                              Kommentar

                              Lädt...
                              X