Maison >base de données >tutoriel mysql >Comment sélectionner la première ligne de chaque groupe dans SQL ?
Sélectionnez la première ligne de chaque groupe en SQL
Dans la gestion de bases de données, il est souvent nécessaire de récupérer des ensembles de données spécifiques à des fins d'analyse ou de reporting. Cela implique de sélectionner la première ligne de chaque groupe d'enregistrements dans le tableau.
Supposons que vous ayez deux tables :
Question :
Votre tâche consiste à sélectionner la première ligne de détails pour chaque représentant commercial (SalesRepId) dans la table SM_SalesRepWorkflow pour le mois et l'année en cours.
Solution :
Pour cela vous pouvez utiliser la fonction ROW_NUMBER() en SQL :
<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>
Explication :
Cette requête identifie efficacement la première ligne d'enregistrements pour chaque représentant commercial au cours du mois et de l'année spécifiés. Il fournit un résultat concis, comme indiqué dans l'énoncé du problème :
En appliquant la fonction ROW_NUMBER(), vous pouvez récupérer efficacement la première ligne de données pour chaque groupe du tableau pour une analyse plus approfondie ou un rapport basé sur les paramètres requis.
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!