ホームページ > データベース > mysql チュートリアル > SQL を使用してストアごとの売れ筋トップ 5 アイテムを見つけるにはどうすればよいですか?

SQL を使用してストアごとの売れ筋トップ 5 アイテムを見つけるにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-22 00:54:43
オリジナル
270 人が閲覧しました

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

SQL を使用した各グループの上位 N 件の販売アイテムの検索

問題ステートメント:

指定販売された各商品の UPC コード、販売日、店舗 ID、合計金額を含む販売記録を含むテーブル売上の場合、目的は、単一の SQL クエリで各店舗の売上上位 5 品目を取得することです。

解決策:

Common Table Expression (CTE) 構文を使用するでは、「s」という名前の一時テーブルを作成し、総売上高に基づいて各店舗内の上位アイテムをランク付けできます。その後、行番号フィルターを使用して各店舗の上位 5 品目を選択できます。

;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;
ログイン後にコピー

説明:

  • サブクエリ s2 は合計を計算します。 StoreID と UPCCode の組み合わせごとの TotalDollarSales の合計。
  • CTE s は、ランキング列 rn を作成し、合計売上金額に基づいて各店舗内の各商品の行番号を決定します。
  • 外側のクエリは、各店舗の CTE から上位 5 つの商品を選択し、TotalDollarSales の順に並べます。降順。

以上がSQL を使用してストアごとの売れ筋トップ 5 アイテムを見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート