14. januar 2003 - 18:26Der er
9 kommentarer og 1 løsning
En lidt svær SQL sætning med count()
Min SQL: $sqlstr_id_stat = "SELECT date, takst, count(status) as antal FROM smser WHERE date LIKE '$visdato%' AND gatename = '$gatename' GROUP BY date";
Giver dette resultat: date, takst, antal 2002-01-01 18 124 2002-01-02 18 122 2002-01-03 18 127
Det er også lige som det skal være.. men nu er det bare sådan at antal ikke bare skal være antal.. men kun de records der: where status = 'er sendt' skal tælles.. men rasten skal forblive som det er.. For hvis jeg indsætter status = 'er sendt' i WHERE sætningen.. får jeg ikke alle records med i rasten af forspørgslen..
Hvorfor er det at du ikke sætter status = 'er sendt' i din where-clause? Antal er jo 0 for de dage der ikke kommer med så. Men dem skal du stadig bruge i dit recordset?
Hvis det sidste er nødvendig tror jeg at du kan lave en join.
$sqlstr_id_stat = "SELECT date, takst, SUM(IF(status='er sendt',1,0)) Antal FROM smser WHERE date LIKE '$visdato%' AND gatename='$gatename' GROUP BY date, takst";
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.