J'ai une base de données volumineuse et je compile un rapport des données. J'ai agrégé et additionné les données de plusieurs tables pour obtenir deux tableaux qui ressemblent à ce qui suit.Choisir la ligne (du groupe) avec la valeur maximale dans une base de données SQL Server
id | code | value id | code | value
13 | AA | 0.5 13 | AC | 2.0
13 | AB | 1.0 14 | AB | 1.5
14 | AA | 2.0 13 | AA | 0.5
15 | AB | 0.5 15 | AB | 3.0
15 | AD | 1.5 15 | AA | 1.0
J'ai besoin d'obtenir une liste d'ID, avec le code (tiré des deux tables) avec la plus grande valeur.
13 | AC
14 | AA
15 | AB
Il existe 4 à 6 000 enregistrements et il n'est pas possible de modifier les tables d'origine. Je ne m'inquiète pas trop de la performance car je n'ai besoin de la faire fonctionner que quelques fois par an. Laissez-moi voir si je peux expliquer un peu plus clairement, imaginez l'ID est l'ID du client, le code est de qui ils ont commandé et la valeur est combien ils ont dépensé là. J'ai besoin d'une liste de tous les identifiants clients et du magasin où le client a dépensé le plus d'argent (et s'ils ont dépensé la même chose dans deux magasins différents, mettez une valeur comme 'ZZ' pour le nom du magasin) .
vous n'avez pas dit si vous vouliez les x premières lignes, donc je les ai juste mises dans l'ordre, avec une entrée par paire id/code. Vous voudrez peut-être supprimer le groupe par identifiant et simplement faire du code. – BlackICE