Heim > Datenbank > MySQL-Tutorial > Wie finde ich mithilfe von SQL die fünf meistverkauften Artikel pro Geschäft?

Wie finde ich mithilfe von SQL die fünf meistverkauften Artikel pro Geschäft?

Linda Hamilton
Freigeben: 2024-12-22 00:54:43
Original
341 Leute haben es durchsucht

How to Find the Top 5 Best-Selling Items per Store Using SQL?

Top-N-verkaufte Artikel für jede Gruppe mithilfe von SQL finden

Problemstellung:

Gegeben Eine Tabelle mit Verkaufsaufzeichnungen, einschließlich des UPC-Codes jedes verkauften Artikels, des Verkaufsdatums, der Geschäfts-ID und des Gesamtumsatzes in Dollar. Das Ziel besteht darin, die fünf am häufigsten verkauften Artikel abzurufen für jeden Speicher in einer einzelnen SQL-Abfrage.

Lösung:

Mit der Common Table Expression (CTE)-Syntax können wir eine temporäre Tabelle mit dem Namen „s“ erstellen Ordnen Sie die Top-Artikel in jedem Geschäft basierend auf dem Gesamtumsatz in Dollar. Anschließend können wir mithilfe eines Zeilennummernfilters die Top 5 Artikel für jede Filiale auswählen.

;WITH s AS (
  SELECT StoreID, UPCCode, tds, rn = ROW_NUMBER()
  OVER (PARTITION BY StoreID ORDER BY tds DESC)
  FROM 
  (
    SELECT StoreID, UPCCode, tds = SUM(TotalDollarSales)
    FROM Sales
    GROUP BY StoreID, UPCCode
  ) AS s2
)
SELECT StoreID, UPCCode, TotalDollarSales = tds
FROM s
WHERE rn <= 5
ORDER BY StoreID, TotalDollarSales DESC;
Nach dem Login kopieren

Erklärung:

  • Die Unterabfrage s2 berechnet die Summe von TotalDollarSales für jede Kombination aus StoreID und UPCCode.
  • Der CTE s erstellt eine Ranking-Spalte, rn, zur Bestimmung die Zeilennummer für jeden Artikel in jedem Geschäft basierend auf dem Gesamtumsatz in Dollar.
  • Die äußere Abfrage wählt die Top-5-Artikel aus dem CTE für jedes Geschäft aus, sortiert nach TotalDollarSales in absteigender Reihenfolge.

Das obige ist der detaillierte Inhalt vonWie finde ich mithilfe von SQL die fünf meistverkauften Artikel pro Geschäft?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage