om man har ett forum som lagrar sin data i 2 tabeller, " forum " & " kommentarer ". alla som skriver inlägg eller kommenterar får sitt nick sparat i den ena tabellen. Om man nu vill räkna ut vilka 5 som har skrivit / kommenterat flest gånger hur fanken gör man då ?
$mest = mysql_query("SELECT count(?), namnet FROM .. ööh 2 tabeller GROUP BY ???? eller ?
alla som startar en tråd sparar förutom rubrik & text sitt nick i tabellen "forum" alla som kommenterar alla trådar sparar förutom sin text & rubrik och till vilken tråd kommentaren tillhör sitt nick där.
nick hamnar i fältet "namn" i tabellen "forum" och i fältet "namnet" i tabellen "kommentar"
jag har provat detta men det funkade inte riktigt bra
$mest = mysql_query("SELECT count(*), forum.namn, kommentar.namnet FROM forum,kommentar GROUP BY namn,namnet DESC LIMIT 0,5");
select case when namnet = namn or namnet is null then namn else namnet end as n, count(*) as antal
from forum natural left join kommentarer
group by case when namnet = namn or namnet is null then namn else namnet end
order by antal desc
limit 5
Nu förutsätter jag att du har en kolumn (med samma namn) i de båda tabellerna som anger vilken tråd det är.
Det skulle vara enklare om du lagrade alla inlägg i en tabell.