Avatar billede Slettet bruger
07. april 2004 - 14:54 Der er 7 kommentarer og
1 løsning

problemer med select og insert

Jeg vil gerne smide alle de rækker fra "tabel1" som har et kundenummer som ikke findes ikke "tabel2" eller "tabel3" over i tabellen "NyTabel":

SELECT [tabel1].kundenummer, [tabel1].landekode, [tabel1].emailadresse, [tabel1].emailkode INTO NyTabel
FROM [tabel1]
WHERE ((([tabel1].kundenummer)<>[tabel2].[kundenummer] Or ([tabel1].kundenummer)<>[tabel3].[kundenummer]));

Jeg får en fejlbesked der siger "indtast parameterværdi"...
Avatar billede terry Ekspert
07. april 2004 - 15:01 #1
INSERT INTO tabele1 SELECT .. FROM Tabel2

You have to do it one table ata time unless you make a untion join on tabel2 and table3
Avatar billede Slettet bruger
07. april 2004 - 15:10 #2
How do I do it with both tables - could you show me the join?
Avatar billede terry Ekspert
07. april 2004 - 15:24 #3
SELECT fld1, fld2 FROM tabel1
UNION ALL
SELECT fld1, fld2 FROM tabel2

You may need to save this as a query and then use the query in the INSERT INTO....
Avatar billede Slettet bruger
07. april 2004 - 15:34 #4
Like this:

INSERT INTO NyTabel
SELECT [tabel1].kundenummer, [tabel1].landekode, [tabel1].emailadresse, [tabel1].emailkode FROM [tabel1]
UNION JOIN
SELECT [tabel2].kundenummer, [tabel2].landekode, [tabel2].emailadresse, [tabel2].emailkode FROM [tabel2]
WHERE ((([tabel1].kundenummer)<>[tabel2].[kundenummer] Or ([tabel1].kundenummer)<>[tabel3].[kundenummer]));

Access is saying "santax error" where "UNION ALL" is...
Avatar billede terry Ekspert
07. april 2004 - 15:56 #5
No!
Make a query in Access where you use the UNION

then use query instead of the two table
Avatar billede Slettet bruger
07. april 2004 - 16:02 #6
I dont get it...
Avatar billede terry Ekspert
07. april 2004 - 16:14 #7
IN access you can make a query, do you know how to do this?

In the query designer select SQL view and the copy the SQL for the UNION JOIN into the query. You MUST NOT use the WHERE in the UNION join
>>>
SELECT [tabel1].kundenummer, [tabel1].landekode, [tabel1].emailadresse, [tabel1].emailkode FROM [tabel1]
UNION JOIN
SELECT [tabel2].kundenummer, [tabel2].landekode, [tabel2].emailadresse, [tabel2].emailkode FROM [tabel2]

save the query as qryUNIONALL

NOW you can make your INSERT query

something like

INSERT INTO .....
SELECT .... FROM qryUNIONALL WHERE ....
[tabel1].kundenummer NOT in (SELECT kundenummer FROM qryUNIONALL)




Now you need to find out which records do not exist in tabel1. You can use the query wizard for doing this.
Avatar billede Slettet bruger
09. april 2004 - 16:26 #8
Hello again!

Now I can see what you mean - it seems like it is working - thank you!
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