> 데이터 베이스 > 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개 품목을 검색하는 것입니다.

해결책:

공용 테이블 표현식(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 순위 열 rn을 ​​생성하여 총 매출액을 기준으로 각 매장 내의 각 항목에 대한 행 번호를 결정합니다.
  • 외부 쿼리는 TotalDollarSales를 기준으로 내림차순으로 정렬된 각 매장의 CTE에서 상위 5개 항목을 선택합니다. 주문하세요.

위 내용은 SQL을 사용하여 매장별 베스트 셀러 상위 5개 품목을 찾는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿