Je ne pense pas que ce soit possible, mais je voudrais être prouvé autrement.MySQL - Afficher la valeur du champ uniquement en première instance de chaque valeur groupée?
J'ai écrit une classe d'affichage de rapport simple pour afficher les résultats de diverses requêtes de base de données. Dans le but d'améliorer l'affichage, quand j'ai un rapport avec des données groupées, je voudrais afficher la valeur de champ seulement sur la première rangée de chaque valeur unique - et je voudrais le faire au niveau de la requête, ou il serait nécessite une logique supplémentaire dans ma classe pour déterminer ces valeurs spéciales.
Il sera probablement utile d'illustrer mes exigences avec un exemple simple. Imaginez cet ensemble de données:
Year Quarter Total
2008 Q1 20
2008 Q2 25
2008 Q3 35
2008 Q4 40
2009 Q1 15
2009 Q2 20
2009 Q3 30
2009 Q4 35
Si possible, je voudrais l'ensemble de données retourné comme:
Year Quarter Total
2008 Q1 20
Q2 25
Q3 35
Q4 40
2009 Q1 15
Q2 20
Q3 30
Q4 35
Est-il possible de le faire progammatically dans MySQL?
+1 bien que ce soit quelque chose de mieux fait dans le client du rapport: P – Andomar
+1 pour une solution de travail, mais qui nécessite un effort considérable pour la maintenance - plus que la gestion des fonctionnalités de ma classe. Je pense que ce que je vais faire est d'ajouter une valeur au nom de la colonne, pour marquer ma classe pour afficher les données d'une certaine manière. Par exemple, 'Year__FirstGroup'. – BrynJ
@BrynJ: comme le dit @Andomar, cela est bien sûr mieux fait sur le client, mais je ne comprends pas vraiment ce que vous entendez par «effort pour maintenir». Cette requête ne cassera pas étant une fois écrite, il n'y a rien à maintenir ici :) – Quassnoi