Avatar billede lenton Nybegynder
18. marts 2004 - 21:02 Der er 8 kommentarer og
1 løsning

Sum af indbetalinger pr. kunde

Jeg har en tabel bestående af kunder og en bestående af indbetalinger. Så vil jeg gerne se hvor mange kr. hver kunde har indbetalt. men laver jeg GROUP BY Kunde.KundeID viser forespørgslen kun de kunder som har lavet mindst én indbetaling - hvordan løses dette problem?
Avatar billede erikjacobsen Ekspert
18. marts 2004 - 21:03 #1
Du skal sikkert bruge en LEFT JOIN i stedet for din INNER JOIN
Avatar billede mugs Novice
18. marts 2004 - 21:09 #2
SELECT Tabel1.kundeid, Tabel2.indbetalt
FROM Tabel1 LEFT JOIN Tabel2 ON Tabel1.kundeid = Tabel2.kundeid
GROUP BY Tabel1.kundeid, Tabel2.indbetalt;
Avatar billede lenton Nybegynder
18. marts 2004 - 21:11 #3
Ja det løste jo snildt problemet!
Jeg er ikke så bevendt med JOINS da jeg tidligere har "joinet" i WHERE sætningen.

Nu viser den så ingenting ved de kunbder som ikke har lavet nogen betalinger - kunne man for skøndhedens skyld få den til at skrive "kr 0" - jeg har nemlig forsøgt med Nz(), men så forsvinder møntfoden.
Avatar billede mugs Novice
18. marts 2004 - 21:13 #4
Jeg har afprøvet mit forslag, der viser 0 ved ingen indbetalinger. Læg din e-mail så sender jeg den.
Avatar billede mugs Novice
18. marts 2004 - 21:18 #5
SELECT Tabel1.kundeid, Tabel1.kunde, Sum(Tabel2.indbetat) AS SumOfindbetat, Nz([indbetat],0) AS Udtryk1
FROM Tabel1 LEFT JOIN Tabel2 ON Tabel1.kundeid = Tabel2.kundeid
GROUP BY Tabel1.kundeid, Tabel1.kunde, Nz([indbetat],0);
Avatar billede lenton Nybegynder
18. marts 2004 - 21:21 #6
Ja ja, LEFT JOIN virker helt fint, men for skønheds skyld vil jeg gerne have Access til at beholde møntfoden - altså så der står "kr 0" og "kr 550" i stedet for blot tallene. Møntfoden er nemlig med hvis man ikke bruger Nz()... Kan man lave en type conversion efter man har brugt Nz() som tydeligvis laver Currency om til Integer?
Avatar billede mugs Novice
18. marts 2004 - 21:24 #7
SELECT Tabel1.kundeid, Tabel1.kunde, Sum(Tabel2.indbetat) AS SumOfindbetat, Nz([indbetat],0) & " Kr" AS Udtryk1
FROM Tabel1 LEFT JOIN Tabel2 ON Tabel1.kundeid = Tabel2.kundeid
GROUP BY Tabel1.kundeid, Tabel1.kunde, Nz([indbetat],0) & " Kr";
Avatar billede lenton Nybegynder
18. marts 2004 - 21:25 #8
Ja jeg fandt selv ud af at Bruge CCur() om udtrykket som konverterede det til Currency, tak for hjælpen!
Du må jo lige lave et svar hvis du er interesseret i point, erikjacobsen ;)
Avatar billede erikjacobsen Ekspert
18. marts 2004 - 21:30 #9
Tak, jeg samler ikke på point.
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