[SQL] 1:n Einträge aus der zweiten Tabelle zählen

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Hapablap, 4. November 2009 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 4. November 2009
    1:n Einträge aus der zweiten Tabelle zählen

    Hi,

    Weiß nicht, ob der Titel treffend formuliert ist, ich bin mir da nicht so sicher.

    Undzwar habe ich zwei Tabellen. Tabelle 1: Eintrag, Tabelle 2: Kommentar

    Eintrag hat eine id und noch irgendwelche unwichtigen Felder.
    Kommentar hat unwichtige Felder und ein Feld eid für Eintrag Id (Verknpüfung).

    1 Eintrag kann n Kommentare haben.

    Jetzt möchte ich meine Einträge nach Anzahl der Kommentare sortiert bekommen.
    Ich habe das so versucht:

    Code:
    SELECT eintrag.id, COUNT(kommentar.id) AS anzahlKommentare FROM eintrag, kommentar WHERE eintrag.id = kommentar.uid ORDER BY anzahlKommentare
    oder so:

    Code:
    SELECT eintrag.id, COUNT(kommentar.id) AS anzahlKommentare
     FROM eintrag INNER JOIN kommentar
     ON (eintrag.id = kommentar.uid)
     WHERE 1=1
    Funktioniert leider nicht. Da werden mir alle Kommentare einfach zusammengezählt. Ich möchte aber, dass mein Eintrag sozusagen um eine Spalte erweitert wird mit Anzahl Kommentare und dann danach sortieren.

    Hoffe, mir kann jemand weiter helfen!
    Danke schon mal.
    Hapablap
     
  2. 4. November 2009
    AW: 1:n Einträge aus der zweiten Tabelle zählen

    Du musst auch sagen welche ID er zusammenzählen soll, bzw nach welchen Kriterium :

    SQL GROUP BY - 1Keydata SQL-Tutorial

    Code:
    SELECT eintrag.id, COUNT(kommentar.id) AS anzahlKommentare 
    FROM eintrag, kommentar 
    WHERE eintrag.id = kommentar.uid 
    GROUP BY kommentar.uid
    ORDER BY anzahlKommentare
    
    so sollte es funktionieren, falls kein leichtsinnsfehler drin ist

    gruß
     
  3. 4. November 2009
    AW: 1:n Einträge aus der zweiten Tabelle zählen

    Super, danke sind keine Fehler drin und alles funktioniert!

    - Closed -
     
  4. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.