Avatar billede sune.jakobsen Nybegynder
29. juni 2001 - 21:35 Der er 5 kommentarer og
1 løsning

Find en fejl...

Jeg har en database med en masse forskellige postnumre og vil nu gerne have af vide hvilke postnumre der findes i den samt hvor mange der er af hver enkelt...
Jeg kan fint få sorteret listen så jeg får en liste over de forskellige numre men jeg har et problem med at få optalt de enkelte grupper (f.eks hvor gange er 9800 repræsenteret osv.)
Den er nok helt galt med min kode da mit ASP kendskab er baseret på \"prøv_dig_frem) metoden, men jeg håber alligevel der er nogen der kan hjælpe:

strSQL = \"SELECT DISTINCT postnummer FROM maillingliste\"
Set RS = Conn.Execute(strSQL)

Do
  Response.Write rs(\"postnummer\") & \"<br>\"

  rs.MoveNext

Loop While Not rs.EOF


strSQL1 = \"SELECT Count(*) as antal WHERE postnummer = \'\" & rs(\"postnummer\") & \"\'\"
set rs1 = Conn.execute(strSQL)

Do
Response.Write Rs1(\"postnummer\") & \"<BR>\"

Rs1.MoveNext

Loop While Not rs.EOF


%>
Avatar billede erikjacobsen Ekspert
29. juni 2001 - 21:52 #1
select postnummer count(*) as antal from mailingliste group by postnummer
Avatar billede erikjacobsen Ekspert
29. juni 2001 - 21:53 #2
select postnummer, count(*) as antal from mailingliste group by postnummer

:)


Avatar billede sune.jakobsen Nybegynder
29. juni 2001 - 22:00 #3
Det tror jeg lige jeg skal have kommenteret, hvis jeg bytter min sql1 sætning ud med dit forslag for jeg ikke noget optalt men bare en liste med postnumre som egentlig ikke har noget med min liste at gøre...
Avatar billede erikjacobsen Ekspert
29. juni 2001 - 22:01 #4
Jo, det er da de postnumre der er i din liste. Hvad har du skrevet?
Avatar billede sune.jakobsen Nybegynder
29. juni 2001 - 22:07 #5
strSQL = \"SELECT DISTINCT postnummer FROM maillingliste\"
Set RS = Conn.Execute(strSQL)

Do
  Response.Write rs(\"postnummer\") & \"<br>\"

  rs.MoveNext

Loop While Not rs.EOF


strSQL1 = \"select postnummer count(*) as antal from maillingliste group by postnummer\"
set rs1 = Conn.execute(strSQL)

Do
Response.Write Rs1(\"postnummer\") & \"<BR>\"

Rs1.MoveNext

Loop While Not rs.EOF


Min database indeholder 8600, 9800, 8600, 7700 jeg skulle altså gerne have listet 8600, 9800, 7700 ( hvilket virker fint) samt have besked om at 8600 findes 2 gange og resten 1 gang...

Jeg er desværre nød til at smutte nu, men vender tilbage imorgen...
Avatar billede erikjacobsen Ekspert
29. juni 2001 - 23:07 #6
Nå, men du skal kun bruge denne ene SQL-sætning, der gør det hele for dig.
Og den rigtige... Dvs. kun dette

strSQL1 = \"select postnummer, count(*) as antal from maillingliste group by postnummer\"
set rs1 = Conn.execute(strSQL1)

Do
  Response.Write rs1(\"postnummer\") & \" \" & rs1(\"antal\") & \"<BR>\"
  Rs1.MoveNext
Loop While Not rs.EOF
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester