ich ein Szenario, wo die folgende Abfrage:SQL - Getting TOP Wert pro Attribut in Ergebnisse gesetzt
SELECT
Purchasing.Supplier,
PurchasingParts.Part,
PurchasingParts.Description,
PurchasingParts.CostPerUnit,
PurchasingParts.PurchaseOrderNum,
PurchasingParts.ItemNum
FROM PurchasingParts
INNER JOIN Purchasing ON PurchasingParts.PurchaseOrderNum = Purchasing.PurchaseOrderNum
WHERE Supplier = 'Sup1'
ORDER BY PurchasingParts.PurchaseOrderNum DESC
folgende Ergebnisse Returns:
Supplier Part Description CostPerUnit PurchaseOrderNum ItemNum
Sup1 cm-14b NULL 9.99 37163 1
Sup1 cm-13 jkljlkjlk 9.99 37160 1
Sup1 cm-13 jkljlkjlk NULL 37158 1
Allerdings würde ich dann filtern möchte, dass Ergebnismenge, so dass nur die letzte Bestellung (dh mit der Höchsten Kaufbestellnummer) PER TEIL (nur für das Attribut Teil) angezeigt wird. Also in diesem Fall würden die endgültigen Ergebnisse sein:
Supplier Part Description CostPerUnit PurchaseOrderNum ItemNum
Sup1 cm-14b NULL 9.99 37163 1
Sup1 cm-13 jkljlkjlk 9.99 37160 1
ich SQL Server 2008 bin mit
Innerhalb 'PurchasingParts' Tabelle, haben Sie eine ID-Spalte oder vielleicht das Datum der Bestellung? –
Die ID für die PurchasingParts-Tabelle ist ein zusammengesetzter Schlüssel von PurchaseOrderNum & ItemNum –
Was ist mit Datum der Bestellung? Hast du das Feld dort? –