30. december 2005 - 19:36Der er
9 kommentarer og 1 løsning
tælle aktivitet i db
hallo eksperter,
jeg har et lile spørgsmål, hvordan kan man tælle aktiviteten i ens databse , lad os sige den sdiste måned.
Jeg kan godt find eud af at tælle aktiviteten, men hvordan begrænser man tællingen til den sidste måned.
Dette er min kode so far:
'sql set db = conn.execute ("SELECT COUNT(emne) AS aktivitet FROM forum WHERE status = 1") set db1 = conn.execute ("SELECT COUNT(reply) AS aktivitet1 FROM comment WHERE status = 1")
if (db("aktivitet")+db1("aktivitet1")) = 0 then response.write "<img src='../billeder/activity0.gif'>" elseif (db("aktivitet")+db1("aktivitet1")) >1 and (db("aktivitet")+db1("aktivitet1")) < 10 then response.write "<img src='../billeder/activity1.gif'>" elseif (db("aktivitet")+db1("aktivitet1")) >10 and (db("aktivitet")+db1("aktivitet1")) < 25 then response.write "<img src='../billeder/activity2.gif'>" elseif (db("aktivitet")+db1("aktivitet1")) >25 and (db("aktivitet")+db1("aktivitet1")) < 40 then response.write "<img src='../billeder/activity3.gif'>" elseif (db("aktivitet")+db1("aktivitet1")) >40 and (db("aktivitet")+db1("aktivitet1")) < 70 then response.write "<img src='../billeder/activity4.gif'>" elseif (db("aktivitet")+db1("aktivitet1")) >70 and (db("aktivitet")+db1("aktivitet1")) < 100 then response.write "<img src='grafik/activity5.gif'>" elseif (db("aktivitet")+db1("aktivitet1")) > 100 then response.write "<img src='../billeder/activity5.gif'>" end if
Du har en fejl i din kode... Den tæller ikke når db1("aktivitet1")) = 10 ... = 25... = 40 osv..
Ellers må du jo ha gemt en dato i din db og så er det blot at hente udtrækket som er større end den 0/10-2005, hvis du fx skal have antallet i oktober 2005 (du skal nok sætte mindre end 1/11 også)
Nå okay. Nu er jeg med. Altså du vil gerne have et udtræk der fortælle automatisk at hvis du går ind i dag skal den fortælle hvad der har været sien 30/11 og hvis du går inden 15 jan skal den komme frem med 15 dec - 15 jan?
Hvordan gemmer du dato i db'en? Jeg har nemlig nogle gange gemt dem som (datoen i dag:) 20051230 og så er det jo bare at tage udtrækket efter: >(20051230-30)
probelmet er bare, at jeg er ikke den hårdeste nød i klassen lige nu til asp, er først ved at lære det.
mener du noget lignede dette?
dagsdato = Now()
'sql set db = conn.execute ("SELECT COUNT(emne) AS aktivitet FROM forum WHERE status = 1 AND dagsdato - 30") set db1 = conn.execute ("SELECT COUNT(reply) AS aktivitet1 FROM comment WHERE status = 1 AND dagsdato - 30")
En løsning jeg har brugt (men som ikke er den smarteste, men den virker!!!)
Jeg gemmer datoer i db som: 20051230
Så kan jeg blot hente dato og trække 100 fra, så har jeg en mdr før...
Hvorfor har jeg gjort dette? Fordi jeg i min tid som nybegynder DB ikke kunne få det til at virke med at gemme i databasen, så var det min løsning og jeg gør det stadig...
Jeg kan desværre ikke hjælpe når det er gemt som 30-12-2005
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.