Selektiere alle meine Fans welche die meisten Follower haben zuerst

  • hallo,


    ich habe ein Problem, unzwar selektiert er nicht nach den Follower meiner Fans. Was habe ich denn im Code falsch gemacht?



    Hab auch group user.id verwendet, jedoch ordnet er es immernoch nicht nach den meisten Fans, Wenn ich jetzt wie ich es oben mache ohne Group, dann zeigt er mir nur einen user an und nicht die anderen.


    PS: Es kommt keine Fehlermeldung.

    PSS:

    Code
    1. follow.date > DATE_SUB(CURDATE(), INTERVAL 7 DAY)


    Das ist halt nur dazu da, dass alle Fans angezeigt werden, die in den letzen 7 Tagen mir gefolgt haben.


  • Programmiere seit einem Jahr und hab noch nie was vom Foreign key gehört. Wozu dient das wenn ich Fragen darf?


    Und ich verstehe nicht wieso das funktioniert. Ich meine du ordnest doch nur nach dem neusten Eintrag aber nicht wer am meisten Fans hat.

  • Verstehe. Bekomm ich allerdings auch gerade nicht hin.

    Ich probiers mal weiter. Nervt mich gerade, dass ich das nicht hinbekomme :D

    Falls Du es hast, sag mal bescheid :)


    EDIT: foreign key ist eine Beziehung zwischen Spalten in|über Tabellen (hinweg).


    Im Bsp:

    SQL
    1. CONSTRAINT `fk_user_id`             -- name (wie bei einem index halt der name)
    2. FOREIGN KEY (`user_id`)     -- in dieser tabelle das feld user_id
    3. REFERENCES `user` (`id`)    -- hat eine reference in der tabelle user mit dem feld id
    4. ON UPDATE CASCADE           -- wenn die reference geupdated wird, dann update auch diese tabelle
    5. ON DELETE RESTRICT,         -- wenn die reference gelöscht wird, dann verweigere das löschen

    Gibt im Netz sicher bessere Beschreibungen.

    Im Grunde stellst Du damit sicher, dass (im Bsp Deiner Tabellen) in der user table kein user gelöscht wird, der noch in der follow table benutzt wird.

    Dieser Beitrag wurde bereits 1 Mal editiert, zuletzt von cottton ()

  • als Tipps:

    - es muss ein GROUP BY geben

    - es muss berücksichtigt werden, dass ein User keine Follower haben kann (Stw. OUTER JOIN)


    Ausserdem ist (mir) nicht klar, was eigentlich ausgegeben werden soll:


    A) Sortiere nach Anzahl der Follower, die in den letzten 7 Tagen gefolgt sind und zeige diese Anzahl an


    B) Sortiere nach Anzahl aller Follower, aber zeige nur die Anzahl der Follower der letzten 7 Tage an


    C) oder ?

  • Sorry das ich so spät schreibe, hatte probleme in RL<.<


    Anwort B ^^