ampyMedlem sedan feb. 20011 498 inlägg Använder en MySQL-databas och jag har denna sql-sats:
set rs = connect.execute("select count(*) as members_antal from members where senastinloggad > '"&DateAdd("d", -3, Now)&"' order by id asc LIMIT 100")
Det jag egentligen vill göra är att räkna hur många av de 100 nyaste medlemmar det är som har loggat någon gång de tre senaste dagarna.
Den koden jag har räknar alla medlemmar och inte de 100 nyaste som jag egentligen vill ha.
Vad har jag gjort för fel?
Prova det här:
select top 100 count(*) as members_antal from members where
senastinloggad > '"&DateAdd("d", -3, Now)&"' order by senastinloggad desc
LarsGMedlem sedan dec. 200012 464 inlägg Det är inte så enkelt i Mysql. Du får dela upp det i två steg
- Ta fram id för den hundrade medlemmen
- Räkna de som har id > nyss framtagna id och loggat in de tre senaste dagarna
set rs = "select id from members order by id desc limit 99,1"
id = rs(0)
rs.close
set rs = connect.execute("select count(*) as members_antal from members where senastinloggad > '"&DateAdd("d", -3, Now)&"' and id >= " & id