24. maj 2006 - 09:23Der er
14 kommentarer og 1 løsning
Sammenligne to tabeller
Jeg har to tabeller hvori der er 1 kolonne (initialer) som jeg gerne vil have sammenlignet. Jeg vil gerne have en melding hvis dataene i initialer i tabel 1 ikke eksistere i tabel 2. Hvordan gør man det? Jeg har prøvet med do - loop, While - Wend og for - next. Men jeg kan kun få den til at tage første record i tabel 1.
Jeg mener det er muligt at forespørge i to forskellige database i samme SQL, men kan ikke lige huske hvordan. Jeg kigger lige. Indtil da kan jeg jo besvare det andet, nemlig med: SQL-sætningen skal ligge der hvor du skal bruge den ;-)
Eksempel:
sql = "SELECT t1.initialer " & _ "FROM tabel1 AS t1 " & _ "LEFT JOIN tabel2 AS t2 ON t1.initialer = t2.initialer " & _ "WHERE t2.initialer IS NULL" set rs = conn.Execute(sql) ' ...og så aflæsning af rækkerne... ' conn er naturligvis dit connectionobjekt til databasen
Du har en connection til en database (lad os sige den med tabel1) og så skal du slå op i database 2 (en ekstern databasefil, altså .mdb, antager jeg), det er den der indeholder tabel2. Så laver du den sidste forspørgsel jeg skrev:
sql = "SELECT tabel1.initialer " & _ "FROM tabel1 " & _ "LEFT JOIN tabel2 IN [c:\database\ekstern1.mdb] ON tabel1.initialer = tabel2.initialer " & _ "WHERE tabel2.initialer IS NULL"
Hvor du naturligvis udskifter stien til din databasefil (det der i mit eksempel hedder c:\database\ekstern1.mdb) med den der peger på din eksterne database...
Hej Softspot Smid lige et svar. Så lukker vi her. Jeg fandt en anden løsning, men du har ofret meget energi i at forsøge at lære mig det, derfor skal du have pts.
LOL! Ja, det kan mange gange give et bedre slutresultat :)
Synes godt om
Ny brugerNybegynder
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.