이 질문은 이전에 유사하게 다루어졌지만 지금은 어려움을 겪고 있습니다.TSQL Row_Number
내가 고객의 구매 패턴을 기반으로 상위 N 판매를 찾을 필요가..
이상적이 올해의 달 기간으로 고객이 상위 N 수 있어야하지만 지금 난 그냥 전체에 걸쳐 상위 N 찾고 있어요 DB.
-- QUERY TO SHOW TOP 2 CUSTOMER INVOICES BY CUSTOMER BY MONTH
SELECT
bill_to_code,
INVOICE_NUMBER,
SUM(INVOICE_AMOUNT_CORP) AS 'SALES',
ROW_NUMBER() OVER (PARTITION BY bill_to_code ORDER BY SUM(INVOICE_AMOUNT_CORP) DESC) AS 'Row'
FROM
FACT_OM_INVOICE
JOIN dim_customer_bill_to ON FACT_OM_INVOICE.dim_customer_bill_to_key = dim_customer_bill_to.dim_customer_bill_to_key
--WHERE
-- 'ROW' < 2
GROUP BY
invoice_number,
Dim_customer_bill_to.bill_to_code
내가 행 = < N.
도와주세요
에 제한을 주어진 솔루션을 이해할 수 없다 :내 쿼리는 것 같습니다.
조회에서 멀리 떨어져 보이지 않는를 사용하는 다른로 선택을 포장해야합니다. 행 번호는 주문에 따라 각 그룹의 레코드에 번호를 매 깁니다. 그런 다음 각 그룹의 처음 두 레코드로 제한 할 수 있습니다. –
'ROW_NUMBER '는 필요하지 않습니다. 최상위'ORDER BY'를 가지고'SELECT TOP 2' 만하십시오. – Dai