Heim >Datenbank >MySQL-Tutorial >Wie wähle ich die erste Zeile jeder Gruppe in SQL aus?
Wählen Sie die erste Zeile jeder Gruppe in SQL aus
Bei der Datenbankverwaltung ist es häufig erforderlich, bestimmte Datensätze zur Analyse oder Berichterstellung abzurufen. Dazu gehört die Auswahl der ersten Zeile jeder Datensatzgruppe in der Tabelle.
Angenommen, Sie haben zwei Tabellen:
Frage:
Ihre Aufgabe besteht darin, die erste Zeile mit Details für jeden Vertriebsmitarbeiter (SalesRepId) in der Tabelle SM_SalesRepWorkflow für den aktuellen Monat und das aktuelle Jahr auszuwählen.
Lösung:
Hierfür können Sie die Funktion ROW_NUMBER() in SQL 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 subquery WHERE rownumber = 1;</code>
Erklärung:
Diese Abfrage identifiziert effektiv die erste Datensatzzeile für jeden Vertriebsmitarbeiter im angegebenen Monat und Jahr. Es liefert eine prägnante Ausgabe, wie in der Problemstellung gezeigt:
Durch die Anwendung der Funktion ROW_NUMBER() können Sie effizient die erste Datenzeile für jede Gruppierung in der Tabelle zur weiteren Analyse oder Berichterstellung basierend auf den erforderlichen Parametern abrufen.
Das obige ist der detaillierte Inhalt vonWie wähle ich die erste Zeile jeder Gruppe in SQL aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!