Ordnen nach Anzahl der Unterkategorie

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

  • Ordnen nach Anzahl der Unterkategorie

    Hallöchen,

    ich habe folgendes Problem: Ich habe in der Datebank zwei verknüpfte Tabellen erstellt. Angezeigt in einer Tabelle sollen alle Kategorien.
    In dieser Tabelle wird auch aufgelistet, wie viele Texte die jeweilige Kategorie hat. Das Ganze möchte ich mit einem Link nach Anzahl
    Texte ordnen können. Dies funktioniert auch auf meinem localhost mit MySQL 5, aber auf meinem Webserver funzt dies mit MySQL 4 nicht.
    Findet jemand im unteren Code den Fehler heraus?

    PHP-Code:
    $result mysql_query("SELECT kategorien.id, kategorien.kategorie, kategorien.datum 
    FROM kategorien 
    LEFT JOIN texte 
    ON kategorien.id = texte.cat_id 
    GROUP BY kategorien.id, kategorien.kategorie, kategorien.datum ORDER BY Count(texte.id) DESC"
    ); 
    Hochachtungsvoll
    pingzaong

  • #2
    Re: Ordnen nach Anzahl der Unterkategorie

    Aha, funktioniert nicht.
    Kannst du den Fehler näher beschreiben?
    Original geschrieben von pingzaong
    Findet jemand im unteren Code den Fehler heraus?
    Ja, es fehlt 'or die(mysql_error())'.

    Kommentar


    • #3
      Es meldet sich folgender Fehler:

      Invalid use of group function
      Hochachtungsvoll
      pingzaong

      Kommentar


      • #4
        Und wieder einmal habe ich die Lösung herausgefunden:

        PHP-Code:
        $result mysql_query("SELECT kategorien.id, kategorien.kategorie, count( texte.id ) , kategorien.datum
        FROM kategorien
        LEFT JOIN texte ON kategorien.id = texte.cat_id
        GROUP BY kategorien.id
        ORDER BY texte.id DESC"
        ); 
        Hochachtungsvoll
        pingzaong

        Kommentar


        • #5
          ich habe gerade gemerkt, dass dies auch nicht die lösung ist. es sortiert das ganze lediglich durch die texte-id.

          Kann mir jemand weiterhelfen? die funktion ORDER BY count(texte.id) wird im MySQL 4 nicht akzeptiert.
          Hochachtungsvoll
          pingzaong

          Kommentar


          • #6
            Probier mal folgendes:
            PHP-Code:
            $sql 'SELECT kategorien.id, kategorien.kategorie, COUNT(texte.id) AS tcount, 
            kategorien.datum FROM kategorien
            LEFT JOIN texte ON kategorien.id = texte.cat_id
            GROUP BY kategorien.id ORDER BY tcount DESC'
            ;
            // echo $sql;
            $result mysql_query($sql) or die(mysql_error()); 

            Kommentar


            • #7
              ah, funktioniert! Danke schön!
              Hochachtungsvoll
              pingzaong

              Kommentar

              Lädt...
              X