Avatar billede mal Nybegynder
24. november 2008 - 14:27 Der er 8 kommentarer og
1 løsning

Sammenkædning af 2 tabeller

Jeg bruger MS ACCESS 2003/2007

Jeg har 2 tabeller, lad os kalde dem a og b

a indeholder et felt som hedder cpr data vedr. 11 og 12 måned 2007, altså a.navn, a.11, a.12

b indeholder et felt som hedder cpr og data vedr. 1 til 10 måned 2008, altså a.navn, a.1 a.2 .. a.10

Begge databaser indeholder cpr numre som ikke er i den anden database, altså der er unikke poster i a, der er unikke poster i b, og ca. 900 går igen.

Jeg vil meget gerne koble de 2 databaser sammen således at jeg kan få der til at stå:

CPR (cpr.a og cpr.b) a.11 a.12 b.1 b.2 ... b.10

Kan man det, og i så fald hvordan?
Avatar billede terry Ekspert
24. november 2008 - 14:43 #1
SELECT CPR, A![11], A![11], NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,NULL, NULL FROM A
UNION

SELECT CPR, NULL, NULL, B![1], B![2] ..... B![10] FROM B
Avatar billede terry Ekspert
24. november 2008 - 14:44 #2
NOTE: the column names are taken from the first select, so if you want othert names then you must give them an alias

EG:
... A![11] AS col1, ....
Avatar billede mal Nybegynder
24. november 2008 - 14:52 #3
Jeg tjekker det lige ... 2 min
Avatar billede mal Nybegynder
24. november 2008 - 15:06 #4
Den skriver at der mangler en operator i udtrykket a!.[11]

(jeg regner med at der skal stå A![11], A![12] og ikke x 11)
Avatar billede mal Nybegynder
24. november 2008 - 15:11 #5
Hvis jeg fjerner ! så virker det .... sådan da ... for den skriver stadig CPR numrene 2 gange ... og så er alle felterne hvor der står NULL, japanske eller kinesiske tegn ... f.eks. 言䚴
Avatar billede terry Ekspert
24. november 2008 - 15:39 #6
If the SQL is correct I dont see how CPR number can be shown twice.


If the CPR number is in a text field then you could try


SELECT CPR, [11], [12], "" , "", "", "", "", "", "", "", "" , ""FROM A
UNION

SELECT CPR, "", "", [1], [2] ..... [10] FROM B
Avatar billede mal Nybegynder
24. november 2008 - 15:50 #7
DET VIRKER :) - Den skriver godt nok stadig CPR nummeret dobbet, hvis der er Data i både database a og b ...

SELECT a.CPR, a.[11], a.[12], "", "", "", "", "", "", "", "", "", "" FROM a
UNION
SELECT b.CPR, "", "", b.[1], b.[2] ..... b.[10] FROM b
Avatar billede mal Nybegynder
24. november 2008 - 15:51 #8
Det jeg har skrevet er:

SELECT a.CPR, a.[11], a.[12], "", "", "", "", "", "", "", "", "", "" FROM a
UNION
SELECT b.CPR, "", "", b.[1], b.[2] ..... b.[10] FROM b
Avatar billede terry Ekspert
24. november 2008 - 19:24 #9
"...hvis der er Data i både database a og b.."

Not quite sure I understand, you say
"Begge databaser indeholder cpr numre som ikke er i den anden database, altså der er unikke poster"

Ate you saying that the same CPR i sin BOTH tables or that there is two columns with CPR number in?
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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