Avatar billede trinitron2005 Nybegynder
24. juni 2005 - 14:37 Der er 14 kommentarer og
1 løsning

Lægge felter sammen og få resultatet i en anden tabel samt felt

HEjsa,

Har et felt der hedder Totalline i en tabel Invoiceline

Jeg vil have at den lægger ALLE totalline sammen og smider
resultatet i et felt i en anden tabel

Tabel = Invoice og Felt = TotalAmount

Kan det lade sig gøre ? og hvis hvordan, kunne være rart med en god beskrivelse af hvordan.
Avatar billede jensen363 Forsker
24. juni 2005 - 15:17 #1
Vha. en forespørgsel :

INSERT INTO Invoice ( TotalAmount )
SELECT Sum(Invoiceline.Totalline) AS SumOfTotalline
FROM Invoiceline, Invoice;
Avatar billede trinitron2005 Nybegynder
24. juni 2005 - 15:26 #2
ja den er fino, men det skal være med UPDATE fordi nu laver den jo en ny linie i min tabel. any input ?
Avatar billede mugs Novice
24. juni 2005 - 18:14 #3
Du kan jo altid slette data fra tabellen først:

DoCmd.RunSQL "DELETE * FROM Inovice"

Og derefter køre jensen's sql
Avatar billede trinitron2005 Nybegynder
24. juni 2005 - 18:27 #4
ja det kunne man, men det er ikke meningen, da jeg så skal indtaste dataene igen....hmmmm
Avatar billede mugs Novice
24. juni 2005 - 18:30 #5
Din kommentar Kl 15:26 siger jo netop, at du ikke ønsker flere poster i tabellen Invoice! Så hvad misforstår jeg?
Avatar billede trinitron2005 Nybegynder
24. juni 2005 - 18:57 #6
JAmen, jeg har en tabel hvor der er nogle data i, derfor en UPDATE og ikke en INSERT.

Til disse data, skal jeg have tilføjet resultatet fra en sammenlægning (SUM).

Det ser lidt ud som det her:

1. Tabel
Felt1       
150 
100
200             

2. Tabel
Felt 3
Resultat af Felt1 altså : 450
Avatar billede mugs Novice
24. juni 2005 - 19:00 #7
Ja - Og i 2. tabel vil du have slettet posten med 450 og indsat en post med den nye total. Det kan du gøre som beskrevet ved først at slette posten og indsætte en ny. ikke særlig elegant men det burde fungere.
Avatar billede trinitron2005 Nybegynder
24. juni 2005 - 20:44 #8
nej det er jo lige nøjagtig det...... 2.tabel/felt3 er jo tom, der skal jeg have de 450 ind ?! men de skal passe sammen med de andre data fra tabel 1 og 2. (dem har jeg ikke nævnt her. Men det er derfor jeg ikke kan bruge en INSERT men skal bruge en UPDATE.
Avatar billede mugs Novice
24. juni 2005 - 21:10 #9
Det forstår jeg intet af :o)

Som jeg ser det ønsker du at sende en del data fra Tabel1 til Tabel2. Disse data skal indeholde et id kan indentificere f.eks en kunde samt et tal der kan være værdien af et salg. Hvis det er korrekt får du jo redundante data.

Hvad er formålet med at sende data til Tabel2? Hvorfor ikke bare lave en forespørgsel der grupperer på id og opsummerer en numerisk værdi (salg)?
Avatar billede trinitron2005 Nybegynder
24. juni 2005 - 23:00 #10
okay den her er lidt svær kan jeg se :0)))  Jeg får ikke reduntant data, netop fordi jeg gør det som jeg gør. de 450 er (ganske rigtigt) slut beløbet på en faktura.

Da jeg har delt det op, så jeg har faktura data i en tabel, (minus vare linier) og kunde data i en anden tabel, samt faktura linier i en 3 tabel. Så skal samlet slut beløbet som svarer til den faktura jeg har lavet i Invoice Tabellen(her skal de 450 ind)
Avatar billede trinitron2005 Nybegynder
24. juni 2005 - 23:01 #11
Men det kan da godt være at det kan laves anderledes ?!
Avatar billede trinitron2005 Nybegynder
24. juni 2005 - 23:02 #12
Hvordan skulle den se ud :
>>Hvad er formålet med at sende data til Tabel2? Hvorfor ikke bare lave en >>forespørgsel der grupperer på id og opsummerer en numerisk værdi (salg)?

Kan du lave et eksempel ?
Avatar billede trinitron2005 Nybegynder
24. juni 2005 - 23:06 #13
Den her virker, men indsætter jo bare ikke tallet i den tabel jeg ønsker :

SELECT Sum(Totalline)
FROM invoiceline;

Men det resultat jeg får er lige det jeg vil frem til.
Avatar billede mugs Novice
25. juni 2005 - 07:56 #14
Eksempel sendt.
Avatar billede trinitron2005 Nybegynder
26. juni 2005 - 22:51 #15
Okay har fået kanon hjælp fra MUGS, så problemet er løst
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

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