Abfrage MySQL

Hi leute ich verusche ein Abfrage auf einen MySQL Server so zu machen, dass ich die Menge der gelagerten Artikel berechne pro ArtikelNr, aber irgendwie macht er nicht das was er soll!! Need Education


SELECT tbl_Artikel.ArtikelNr,
SUM(tbl_Lager.EingelagertMenge) As Menge
FROM tbl_Lager
LEFT OUTER JOIN tbl_Artikel ON tbl_Artikel.ArtikelNr = tbl_Artikel.ArtikelNr
GROUP BY tbl_Artikel.ArtikelNr
ORDER BY tbl_Artikel.ArtikelNr;
 
Zuletzt bearbeitet:
Habe die Lösung:

SELECT tbl_Artikel.ArtikelNr, SUM(tbl_Lager.EingelagertMenge) As Menge
FROM tbl_Artikel
LEFT OUTER JOIN tbl_Lager ON (tbl_Artikel.ArtikelNr = tbl_Lager.ArtikelNr)
GROUP BY tbl_Artikel.ArtikelNr

==> Erzeugt das:

ArtikelNr Menge
46 | 2
47 | NULL
48 | NULL
49 | NULL
50 | 1
51 | 273
52 | 396
53 | 8
54 | NULL
55 | 1
56 | 58
57 | 4149
58 | 1345
59 | 2388
60 | 172
61 | 8
62 | 30

Nimmt alle ArtikelNr mit, auch die die als Menge NULL stehen haben (wo also keine Menge vorhanden ist)


Und hier:

SELECT tbl_Artikel.ArtikelNr, SUM( tbl_Lager.EingelagertMenge ) AS Menge
FROM tbl_Artikel
RIGHT OUTER JOIN tbl_Lager ON ( tbl_Artikel.ArtikelNr = tbl_Lager.ArtikelNr )
GROUP BY tbl_Artikel.ArtikelNr


==> Erzeugt das:

ArtikelNr Menge
1 | 703
2 | 733
3 | 506
4 | 506
5 | 277
6 | 223
7 | 245
8 | 430
9 | 210
10 | 154
11 | 12
12 | 264
13 | 184
14 | 212
15 | 236
16 | 115
17 | 330
18 | 367
19 | 315
20 | 230

Nimmt nur die Artikel mit, die auch eine Menge haben, also wo die Menge <> NULL ist

Den Fehler in der Anfrage bezogen auf Thread 1 seht ihr ja selber!

Cu Nathaniell
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück