SQL 데이터베이스에서 각 영업 담당자에 대한 첫 번째 워크플로 가져오기
이 기사에서는 이번 달과 올해의 초기 워크플로를 얻는 것을 목표로 각 담당자에 대해 여러 워크플로가 있는 상황에 초점을 맞춰 데이터베이스 테이블에서 각 영업 담당자에 대한 데이터의 첫 번째 행을 검색하는 방법을 살펴봅니다. .
이를 위해 아래와 같이 ROW_NUMBER() 함수를 사용할 수 있습니다.
<code class="language-sql">SELECT * FROM ( SELECT workflowid, salesRepId, quantityAssigned, quantityLeft, month, year, ROW_NUMBER() OVER (PARTITION BY salesRepId ORDER BY workflowid) AS rownumber FROM sm_salesRepWorkflow ) AS RankedWorkflows WHERE rownumber = 1;</code>
이 쿼리는 먼저 영업 담당자 ID별로 각 워크플로 레코드에 행 번호를 할당합니다. 이후에는 행 번호가 1인 레코드만 선택합니다.
사용예
다음 데이터를 고려하세요.
workflowid | salesRepId | quantityAssigned | quantityLeft | month | year |
---|---|---|---|---|---|
WF_101 | EMP_101 | 100 | 90 | May | 2013 |
WF_101 | EMP_102 | 100 | 100 | May | 2013 |
WF_101 | EMP_103 | 100 | 80 | May | 2013 |
WF_102 | EMP_101 | 100 | 70 | May | 2013 |
쿼리를 실행하면 다음 결과가 검색됩니다.
workflowid | salesRepId | quantityAssigned | quantityLeft | month | year |
---|---|---|---|---|---|
WF_101 | EMP_101 | 100 | 90 | May | 2013 |
WF_101 | EMP_102 | 100 | 100 | May | 2013 |
WF_101 | EMP_103 | 100 | 80 | May | 2013 |
이 행은 지정된 월과 연도의 각 담당자에 대한 첫 번째 워크플로를 나타냅니다. workflowid
의 순서에 따라 "첫 번째" 작업 흐름이 결정됩니다. 다른 열(예: 날짜)을 기반으로 첫 번째 워크플로를 결정해야 하는 경우 ORDER BY
절을 조정해야 합니다.
위 내용은 SQL에서 각 영업 담당자에 대한 첫 번째 워크플로를 가져오는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!