Announcement

Collapse
No announcement yet.

count join 2 Tabellen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • count join 2 Tabellen

    Hallo,

    und zwar scheitere ich an dem correcten sql (outer join) Befehl um 2 Tabellen zu verknüpfen.

    Tabelle 1:

    user
    ----------
    id, name


    Tabelle 2:

    votes:
    -----------

    id, article, uid, voted-by


    Mit:

    ("SELECT `uid` , COUNT( uid) AS count FROM `votes` GROUP BY `uid` ORDER BY count DESC");

    bekomme ich eine Rangfolge der Votes Tabelle, in der die uid des top gevoteten articels bekomme. Hat ein article keine Votes, steht er folglich nicht in der votes tabelle, wird also beim obigen Befehl nicht berücksichtigt.

    Es sollten aber alle Teilnehmer dargestellt werden, auch die mit "0 Votes".

    Wie joine ich die obige Abfrage mit meiner user Tabelle, damit im entstehenden Resultset alle user dargestellt werden?

    Ich hätte folgendes gedacht, haut aber nicht hin:

    SELECT `uid` , COUNT( uid) AS count FROM `votes` OUTER JOIN user ON (user.id = votes.uid) GROUP BY `uid` ORDER BY count DESC
    TIA und Gruß,
    sv
    Zuletzt editiert von supervision; 23.08.2011, 13:39.

  • #2
    Hallo,

    "haut aber nicht hin" ist KEINE Fehler- oder Problembeschreibung!
    Grob gesehen würde ich sagen du joinst in die falsche Richtung. Siehe Unterschiede zwischen LEFT und RIGHT JOIN.

    Gruß Falk
    Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

    Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

    Comment

    Working...
    X