如何在MSSQL查询中为具有INNER JOIN的一列进行SUM()适当的行?



我有一个MSSQL查询:

SELECT        Artikel.ArtikelID, Artikel.K_HerstellerName AS ManufacturerName, Artikel.K_HerstellerPN AS ManufacturerPN, Artikel.ArtikelNummer AS SupplierPN, Artikel.Bezeichnung + ' - ' + Artikel.LangText AS Description, 
Artikel.LetzterEK AS Price, Artikel.IstGesperrt AS Gesperrt, Lager.Verfuegbar AS Quantity, Lager.LagerPlatz AS LP
FROM            Artikel INNER JOIN
Lager ON Artikel.ArtikelID = Lager.ArtikelID
WHERE        (Artikel.K_HerstellerPN <> '') AND (Artikel.IstGesperrt = 'False') AND (Artikel.ArtikelNummer LIKE '%[0-9]-[0-9]%')

在这里你可以看到它的样子:https://ibb.co/fyOHv9

如何在MSSQL查询中为"数量"列进行SUM((适当的行?

因此,所有行都必须是唯一的。

您需要按使每行唯一的所有列进行分组,然后在选择中使用聚合函数,例如:

SELECT  
MIN(Artikel.ArtikelID ) ArtikelID,
MIN(Artikel.K_HerstellerName) ManufacturerName, 
SUM(Lager.Verfuegbar) Quantity
FROM Artikel 
INNER JOIN  Lager ON Artikel.ArtikelID = Lager.ArtikelID
WHERE (Artikel.K_HerstellerPN <> '') ...
GROUP BY
Artikel.ArtikelID, 
Artikel.K_HerstellerName, 

最新更新