optellen in database

Status
Niet open voor verdere reacties.

old Hippy

Gebruiker
Lid geworden
24 mei 2008
Berichten
911
Hi Allemaal
Ik wil graag in mijn database de artikelen optellen.
Dus alle artikelen met het zelfde artikelnummer.
Dus in het voorbeeld zou er bij totaalaantal 10 moeten staan bij de eerste 4
En bij de laatste twee 15
Iemand een idee hoe ik dit kan doen?
 

Bijlagen

  • Knipsel.JPG
    Knipsel.JPG
    25,6 KB · Weergaven: 49
SELECT Artikelnummer, sum(Verkoopaantal) from JouwTabel GROUP BY Artikelnummer
 
Hi bedank voor je reactie evertVB

Helaas komt mijn artikelnummer in de totaalaantal te staan
Code:
SELECT        Artikelnummer, SUM(Verkoopaantal) FROM  Orders GROUP BY Artikelnummer
 
In twee queries opsplitsen:

Code:
SELECT Artikelnummer, SUM(Verkoopaantal) AS Totaalaantal
INTO EenNieuweHulpTabel
FROM Orders
GROUP BY Artikelnummer;
...
SELECT D.Artikelnummer, D.Verkoopaantal, T.Totaalaantal
FROM Orders D, EenNieuweHulpTabel T
WHERE D.Artikelnummer = T.Artikelnummer
 
Hi ik krijg de volgende fout melding.
zie bijlage

Even voor de duidelijkheid Ik wil de voorraad bijhouden van de artikelen.
in artikeldatabase heb ik historichevoorraad verkoopaantal en werkelijkevoorraad.
Deze werk ik bij met een Update query
Code:
UPDATE       Artikelen
SET                Werkelijkevoorraad = Artikelen.Voorraad - Orders.Verkoopaantal
FROM            Artikelen INNER JOIN
                         Orders ON Artikelen.Artikelnummer = Orders.Artikelnummer

Maar dit trekt bij ieder artikel de voorraad af
en het moet de totaal verkoop per artikel aftrekken.



Knipsel2.JPG
 
Laatst bewerkt:
Even v.w.b. je foutmelding:
"There is already an object named EenNieuweHulpTabel in the database"

Voer dan eerst een SQL uit die die tabel weggooit - met een DROP TABLE opdracht.
Even voor de duidelijkheid Ik wil de voorraad bijhouden van de artikelen.
in artikeldatabase heb ik historichevoorraad verkoopaantal en werkelijkevoorraad.
Deze werk ik bij met een Update query
Code:
UPDATE       Artikelen
SET                Werkelijkevoorraad = Artikelen.Voorraad - Orders.Verkoopaantal
FROM            Artikelen INNER JOIN
                         Orders ON Artikelen.Artikelnummer = Orders.Artikelnummer
Dit volg ik niet helemaal. Maar probeer eerst eens die drop table??
 
Hi Evert
allereerst bedankt voor je hulp
Mischien kan je me helpen met een drop table
ik heb geen idee hoe dit werkt?
al vast bedankt.
Old Hippy
 
Code:
DROP TABLE EenNieuweHulpTabel;
...
SELECT Artikelnummer, SUM(Verkoopaantal) AS Totaalaantal
INTO EenNieuweHulpTabel
FROM Orders
GROUP BY Artikelnummer;
...
SELECT D.Artikelnummer, D.Verkoopaantal, T.Totaalaantal
FROM Orders D, EenNieuweHulpTabel T
WHERE D.Artikelnummer = T.Artikelnummer

En als we dan ook nog bedenken dat we aan elke tabel betekenisvolle namen moeten proberen te geven, dan wordt het eerder:
Code:
DROP TABLE TotAantal_per_artikel_hulp;
...
SELECT Artikelnummer, SUM(Verkoopaantal) AS Totaalaantal
INTO TotAantal_per_artikel_hulp
FROM Orders
GROUP BY Artikelnummer;
...
SELECT D.Artikelnummer, D.Verkoopaantal, T.Totaalaantal
FROM Orders D, TotAantal_per_artikel_hulp T
WHERE D.Artikelnummer = T.Artikelnummer
 
Hi Evert

Geweldig dit werkt.
Ik ben je zeer dankbaar.
wand wat programeren betreft ben ik echt een beginner.
Maar nu wilde ik dit resultaat in mijn artikeldatabase gebruiken.
dit gaat dus niet.
wat ik niet begrijp Ik gebruikte hier voor de volgende query
Code:
UPDATE       Artikelen
SET                Werkelijkevoorraad = Artikelen.Voorraad - Orders.Verkoopaantal
FROM            Artikelen INNER JOIN
                         Orders ON Artikelen.Artikelnummer = Orders.Artikelnummer


UPDATE       Artikelen
SET                Werkelijkevoorraad = Artikelen.Voorraad - Orders.Totaalaantal
FROM            Artikelen INNER JOIN
                         Orders ON Artikelen.Artikelnummer = Orders.Artikelnummer
deze update werkte met verkoopaantal Wel.
maar laat het met Totaalaantal af weten en laad de cell werkelijkevoorraad leeg.
Heb je mischien enig idee waarom dit zo is???

De colom Werkelijkevoorraad word van uit historichevoorraad geupdate
En dan wilde ik met de bovenstaande query het Totaalaantal uit Orders er van af trekken.
Hopelijk wil je mij nog verder helpen.
 

Bijlagen

  • Knipsel.jpg
    Knipsel.jpg
    95,2 KB · Weergaven: 31
Werkt deze query?
Code:
UPDATE       Artikelen
SET                Werkelijkevoorraad = Artikelen.Voorraad - TotAantal_per_artikel_hulp.Totaalaantal
FROM            Artikelen INNER JOIN
                         TotAantal_per_artikel_hulp ON Artikelen.Artikelnummer = TotAantal_per_artikel_hulp.Artikelnummer
De rubriek TotaalAantal hoef je dan niet meer op te nemen in je tabel orders.

Als het niet werkt dan wordt het tijd dat je je hele project hier post.
 
Beste Evert


Het werkt ik ben je zeer dankbaar voor je hulp.
was hier zelf al maanden mee aan het knoeien.
maar het is opgelost
nog maals hartelijk dank voor je tijd en hulp

een dankbare Old Hippy
Resultaat in de bijlage.
 

Bijlagen

  • Knipsel.JPG
    Knipsel.JPG
    80,7 KB · Weergaven: 30
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan