Avatar billede snowball Novice
17. november 2003 - 12:46 Der er 1 løsning

Optimering af query

Hej.

Jeg har en tabel med en masse felter, og ét af disse felter er et ID felt (ikke auto-num. men dog stadig et tal). Jeg ønsker nu at lave en kopi af de poster der har et bestemt ID, og så gemme dem under et nyt ID. Det nye ID skal den hente fra et tekstfelt på en form.

Nedenstående query virker som sådan, men er bestemt ikke optimal når der er mange poster (med flere felter end i nedenstående eksempel) der skal kopieres.

INSERT INTO [Tabel] (Felt1, Felt2, Felt3, Felt4)
VALUES ([Forms]![MinForm]![TekstFelt1], (SELECT Felt2 FROM [Tabel] WHERE Felt1 = [Forms]![MinForm]![TekstFelt2]),
(SELECT Felt3 FROM [Tabel] WHERE Felt1 = [Forms]![MinForm]![TekstFelt2]),
(SELECT Felt4 FROM [Tabel] WHERE Felt1 = [Forms]![MinForm]![TekstFelt2]),

Noget mere optimal ville være nedenstående, men så brokker Access sig over at det ikke er værdier til alle de felter man vil indsætte (den ser åbenbart sub-select'en som 1 felt i stedet for 3).

INSERT INTO [Tabel] (Felt1, Felt2, Felt3, Felt4)
VALUES ([Forms]![MinForm]![TekstFelt1], (SELECT Felt2, Felt3, Felt4 FROM [Tabel] WHERE Felt1 = [Forms]![MinForm]![TekstFelt2]))

Nogen forslag ?

På forhånd tak.

Snowball
Avatar billede snowball Novice
17. november 2003 - 14:26 #1
INSERT INTO [Tabel] (Felt1, Felt2, Felt3, Felt4)
SELECT [Forms]![MinForm]![TekstFelt1], Felt2, Felt3, Felt4 FROM [Tabel] WHERE Felt1 = [Forms]![MinForm]![TekstFelt2]

Snowball
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