Begge dele "virker", men ingen af delene giver mig nogle resultater. mysql_num_rows() returnerer 0. Hvis jeg derimod vælger n >= 0, så får jeg de samme som før.
Det giver mig det rigtige antal, men ID, username er forkert ved alle dem, hvor "count = 0". Således er ID,username blot en kopi af det sidste ID,username hvor count > 0.
JEg tænker lidt på, om man måske kunne bruge den forrige query sammen med en UNION (og så alle dem, hvor count = 0) .. ?!
Her har du den aktuelle sqlstr, hvor eneste fejl er at count = 1 for dem, hvor count skulle være nul:
Select t1a.ID, t1a.Username, count(*) as n From t1 t1a Left Join t1 t1b On t1a.ID = t1b.SID Or t1b.SID IS NULL Where c1.Sponsor = '$myVar' Group By t1a.ID Order By n Desc
Sorry, der var lige en copy/paste fejl. Her er den:
Select t1a.ID, t1a.Username, count(*) as n From t1 t1a Left Join t1 t1b On t1a.ID = t1b.SID Or t1b.SID IS NULL Where t1b.SID = '$myVar' Group By t1a.ID Order By n Desc
Select t1a.ID, t1a.Username, count(*) as n From t1 t1a Left Join t1 t1b On t1a.ID = t1b.SID Or t1b.SID IS NULL Where t1a.SID = '$myVar' Group By t1a.ID Order By n Desc
Det bliver nødt til at være OR... Hvis du skriver AND, så spørger du jo om t1b.SID er lig med BÅDE t1a.ID og NULL, hvilket jo aldrig vil opfyldes...
Jeg counter nu på t1b.ID i stedet for *, og nu virker det hele :D
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.