sql에서 모든 그룹의 첫 번째 행
테이블이 두 개 있습니다.
1-> SM_직원
(1) employeeid (2) roleid (3) storeid
2-> SM_SalesRep 워크플로우
(1) workflowid (2) Salesrepid foreign key to employeeid (3) QuantityAssigned (4) QuantityLeft (5) month (6) year
이 표를 기준으로 SM_SalesRepWorkflow 주문의 모든 SalesRepDetails 첫 번째 행을 CurrentMonth 및 CurrentYear에 대한 SalesRepId로 선택해야 합니다.
예
Workflowid SalesRepid 수량 할당된 수량 남은 달 연도
WF_101 : EMP_101 : 100 : 90 : 2013년 5월
WF_101 : EMP_102 : 100 : 100 : 2013년 5월 :
WF_101 : EMP_103 : 100 : 80 : 2013년 5월
WF_102 : EMP_101 : 100 : 70 : 2013년 5월
그래서 제가 원하는 결과는
WF_101 : EMP_101 : 100 : 90 : 2013년 5월
WF_101 : EMP_102 : 100 : 100 : 2013년 5월 :
WF_101 : EMP_103 : 100 : 80 : 2013년 5월
따라서 영업 담당자에게는 많은 워크플로우가 있을 수 있습니다.하지만 저는 이번 달과 올해의 모든 영업 담당자에게 첫 번째 것을 원합니다.
사용할 수 있습니다.ROW_NUMBER()
다음과 같은 기능:
SELECT *
FROM(SELECT workflowid, salesRepId, quantityAssigned,
quantityLeft, month, year
, ROW_NUMBER()
OVER (PARTITION BY salesRepId
ORDER BY workflowid) AS rownumber
FROM sm_salesRepWorkflow)
WHERE rownumber = 1;
질문을 이해하는 데 약간 어려움이 있어서 제가 쉬면 나중에 수정하겠습니다. 하지만 당신은 다음과 같은 것을 하고 싶어하는 것처럼 보입니다.SELECT * FROM SM_SalesRepWorkflow WHERE Workflowid = latest
여기서 latest는 워크플로의 id입니다.쿼리에서 수행하는 대신 쿼리 외부의 최신 정보를 확인하여 가져올 수 있습니까?
언급URL : https://stackoverflow.com/questions/16529701/select-first-row-of-every-group-in-sql
'programing' 카테고리의 다른 글
Firebase 데이터베이스에서 문자열로 간단한 검색을 수행하는 방법은 무엇입니까? (0) | 2023.06.20 |
---|---|
지역 깃브랜치가 존재하는지 알 수 있는 더 좋은 방법이 있습니까? (0) | 2023.06.20 |
무작위 선택에 "필수 질문" 포함 (0) | 2023.06.15 |
내보낸 모듈 내에서 Vuex mapActions를 사용할 수 있습니까? (0) | 2023.06.15 |
matplotlib에서 가로 세로 비율을 설정하려면 어떻게 해야 합니까? (0) | 2023.06.15 |