Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
select count(`id`) as `count_posts` from `table` where `user_id`=11111111 and `post`=1234
ergibt eine ergebnistabelle mit der spalte count_posts. die einzige ergebniszeile enthält dann in der spalte count_posts die anzahl der posts dieses einen users zu einem thema.
select count(`id`) as `count_posts` from `table` where `user_id`=11111111 and `post`=1234
ergibt eine ergebnistabelle mit der spalte count_posts. die einzige ergebniszeile enthält dann in der spalte count_posts die anzahl der posts dieses einen users zu einem thema.
Nur möchte ich nicht vorgeben welche User_id erzählen soll, sondern ich möchte einfach die ersten 3 User haben, die am meisten zum Post "1234" geschrieben haben.
Hab schon probiert es umzustellen, aber kriege es nicht hin.
Da fehlt noch ein "ORDER BY count_posts DESC" vor dem Limit-Eintrag, würde ich sagen und das * ist überflüssig und würde zu zu vielen Reihen führen. Außerdem muss man das noch gruppieren:
Code:
SELECT COUNT(*) AS posts, user_id
FROM table
WHERE post = 1234
GROUP BY user_id
ORDER BY posts DESC
LIMIT 3
Wenn ich es mir angucke, fällt mir auf, dass ich es normalerweise auch gar nicht mache. Aber per Hand schreibe ich sowieso keine Queries mehr, dafür ich ich Funktionen die mir das abnehmen