Avatar billede Slettet bruger
20. juli 2003 - 23:21 Der er 17 kommentarer og
1 løsning

Count fra 2 dber?

Hvordan kan jeg tælle fra en database en hente fra en anden, viser lige mine databaser!

Avis.mdb
Tabel: artikler
forfatter  laes
Bent      true
lis        true
lis        true

crew.mdb
table: crew
brugernavn
bent
lis

Hvordan kan jeg så lave så den tæller hvormange artikler hver person har skrevet og laver en top 10 af det?
Avatar billede erikjacobsen Ekspert
20. juli 2003 - 23:26 #1
Man kunne overveje at putte de to tabeller i samme database...
Avatar billede eagleeye Praktikant
20. juli 2003 - 23:27 #2
Hvis du har forfatter navnet i Avis.mdb behøver du vel ikke kombinere de to tabeller eller skal du havde andre oplysninger ud omkrign personerne.

Det bedste ville vøre at hvade de to database filer slået sammen til en database fil, så kunne man let JOINe de to tabeller. Nu skal man lave Count'et første også hendte de ekstra informationer ud fra crew.mdb ud over forfatternanvet.

SQLcount = "SELECT count(*) as antal, forfatter FROM artikler GROUP BY forfatter"
Avatar billede Slettet bruger
20. juli 2003 - 23:29 #3
Jeg skal have så man kan se infoen via idet, også skal den ogse se om brugeren er lukket!.. Håber i kan hjælpe! Vil gerne give flere points!
Avatar billede Slettet bruger
20. juli 2003 - 23:30 #4
Kender også godt count, ved ikke hvad man skal gøre når det er 2 databaser!
Avatar billede eagleeye Praktikant
20. juli 2003 - 23:32 #5
Da du ikke kan lave en SQL som kobinere to tabeller fra to databaser direkte, skal det enten laves sådan at du lavdet Count SQL først og loop'er gemmen det resultat og kun viser dem som skal vises ved at lave opslag i den anden tabel. Eller finde de personer er aktive og så lave Count SQL ud fra det men en stor WHERE del på.
Avatar billede erikjacobsen Ekspert
20. juli 2003 - 23:36 #6
Er der en god grund til at have de 2 tabeller i hver sin database?
Avatar billede Slettet bruger
20. juli 2003 - 23:38 #7
kan man lave en hvordan tæller alt fra databasen, så søger den i den næsten og sætter dem i række følge? Eller vil du give et eksempel på det der?
Avatar billede Slettet bruger
20. juli 2003 - 23:40 #8
erikjacobsen -> såden laver jeg det normalt, også er de også nemmere at hente fra ftp..!
Avatar billede eagleeye Praktikant
20. juli 2003 - 23:41 #9
Eks på nummer 1.:

SQL = "SELECT Count(forfatter) AS antal, forfatter FROM artikler GROUP BY forfatter ORDER BY count(forfatter);"
Set rs = Conn2.Execute(SQL)
do while not rs.EOF
  SQLtjek = "SELECT * FROM crew WHERE brugernavn = '" & rs("forfatter") & "' AND aktiv= true"
  Set rsTjek = Conn1.Execute(SQLtjek)
  if not rsTjek.EOF then
    Response.write "forfatter " & rs("forfatter") & " har lavet " & rs("antal") & "artiker.<br>"
  end if
  rs.Movenext
loop




Eks på nummer 2:

SQL = "SELECT * FROM crew WHERE aktiv=true"
Set rs = Conn1.Execute(SQL)
do while not rs.EOF
  list = list & ",'" & rs("brugernavn") & "'"

  rs.movenext
loop
list = mid(list,2)
SQL = "SELECT Count(forfatter) AS antal, forfatter FROM artikler WHERE forfatter IN (" & list & ") GROUP BY forfatter ORDER BY count(forfatter);"
Avatar billede eagleeye Praktikant
20. juli 2003 - 23:42 #10
Men det leteste ville være de var i samme database fil, så kunne du nøjes med en SQL.
Avatar billede Slettet bruger
20. juli 2003 - 23:46 #11
Hvor skal jeg sætte connectioner til databasen?
Avatar billede eagleeye Praktikant
20. juli 2003 - 23:49 #12
Connection kan du lave i starten som det første.
Avatar billede Slettet bruger
20. juli 2003 - 23:55 #13
altser en før SQL, så slutter jeg den vil do while net rs.eof så strater jeg en ny ved SQLtjek?
Avatar billede eagleeye Praktikant
20. juli 2003 - 23:57 #14
Du laver bare to i toppen af koden så.

Set conn1 = Server.CreateObject("adodb.connection")
Set conn2 = Server.CreateObject("adodb.connection")
Conn1.Open xxxxx
Conn2.Open xxxxx

kode her


Conn1.Close
Conn2.Close
Avatar billede Slettet bruger
20. juli 2003 - 23:59 #15
okey, chekker det lige ud, holdkæft hvor var jeg lige dum der :)!
Avatar billede Slettet bruger
21. juli 2003 - 00:13 #16
Tak det virker, har har du dine points..! Har du en hjemmeside?
Avatar billede Slettet bruger
21. juli 2003 - 00:13 #17
Hmm gider du ikke smide et svar :)?
Avatar billede eagleeye Praktikant
21. juli 2003 - 00:15 #18
Jo da, her et svar :)
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