Heim >Datenbank >MySQL-Tutorial >Wie erhalte ich den ersten Workflow für jeden Vertriebsmitarbeiter in SQL?

Wie erhalte ich den ersten Workflow für jeden Vertriebsmitarbeiter in SQL?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-22 06:16:08749Durchsuche

How to Get the First Workflow for Each Sales Representative in SQL?

Holen Sie sich den ersten Workflow für jeden Vertriebsmitarbeiter aus der SQL-Datenbank

In diesem Artikel wird untersucht, wie die erste Datenzeile für jeden Vertriebsmitarbeiter aus der Datenbanktabelle abgerufen wird. Dabei liegt der Schwerpunkt auf der Situation, in der für jeden Vertriebsmitarbeiter mehrere Workflows vorhanden sind, mit dem Ziel, den anfänglichen Workflow für diesen Monat und dieses Jahr zu erhalten .

Dazu können wir die Funktion ROW_NUMBER() wie unten gezeigt verwenden:

<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>

Diese Abfrage weist zunächst jedem Workflow-Datensatz anhand der Vertriebsmitarbeiter-ID eine Zeilennummer zu. Anschließend werden nur Datensätze mit der Zeilennummer 1 ausgewählt.

Beispielverwendung

Berücksichtigen Sie die folgenden Daten:

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

Beim Ausführen der Abfrage werden die folgenden Ergebnisse abgerufen:

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

Diese Zeilen stellen den ersten Workflow für jeden Vertreter im angegebenen Monat und Jahr dar. Beachten Sie, dass die Reihenfolge von workflowid den „ersten“ Workflow bestimmt. Wenn Sie den ersten Workflow anhand anderer Spalten (z. B. Datum) ermitteln müssen, müssen Sie die ORDER BY-Klausel anpassen.

Das obige ist der detaillierte Inhalt vonWie erhalte ich den ersten Workflow für jeden Vertriebsmitarbeiter in SQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn