Maison >base de données >tutoriel mysql >Comment obtenir le premier workflow pour chaque représentant commercial en SQL ?
Obtenez le premier workflow pour chaque commercial à partir de la base de données SQL
Cet article explore comment récupérer la première ligne de données pour chaque représentant commercial à partir de la table de la base de données, en se concentrant sur la situation où il existe plusieurs flux de travail pour chaque représentant, dans le but d'obtenir le flux de travail initial pour ce mois et cette année. .
Pour cela, nous pouvons utiliser la fonction ROW_NUMBER() comme indiqué ci-dessous :
<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>
Cette requête attribue d'abord un numéro de ligne à chaque enregistrement de flux de travail par ID de représentant commercial. Par la suite, il sélectionne uniquement les enregistrements dont le numéro de ligne est égal à 1.
Exemple d'utilisation
Considérez les données suivantes :
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 |
L'exécution de la requête récupérera les résultats suivants :
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 |
Ces lignes représentent le premier flux de travail pour chaque représentant au cours du mois et de l'année spécifiés. Notez que l'ordre de workflowid
détermine le "premier" workflow. Si vous devez déterminer le premier workflow en fonction d'autres colonnes (telles que la date), vous devez ajuster la clause ORDER BY
.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!