Entwickler-Ecke
Datenbanken - SQL Group By den PK der aggregation ausgeben
Kostas - Fr 08.07.11 16:29
Titel: SQL Group By den PK der aggregation ausgeben
Hallo Zusammen,
ich habe die Beispieltabelle:
Aus der Tabelle sollen pro TEILNEHMERID das größte ERGEBNIS
ausgegeben werden. Die schwirigkeit dabei ist, beim größten Ergebnis
soll auch das Primary Key Feld ID ausgegeben werden.
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| ID TEILNEHMERID, max(ERGEBNIS) 1 1 2 2 1 5 3 2 6 4 2 8 5 3 10 6 3 18 7 3 19
SELECT TEILNEHMERID, max(ERGEBNIS) ... GROUP BY TEILNEHMERID |
Antwort des Selects:
Quelltext
1: 2: 3: 4:
| TEILNEHMERID, max(ERGEBNIS) 1 5 2 8 3 19 |
Ich benötige jedoch das:
Quelltext
1: 2: 3: 4:
| ID TEILNEHMERID, max(ERGEBNIS) 2 1 5 4 2 8 7 3 19 |
Hat jemand eine Idee?
Gruß Kostas
Yogu - Fr 08.07.11 19:36
Hallo,
was passiert denn, wenn du das ID-Feld einfach noch mit in die
SELECT-Klausel mit aufnimmst? Bringt er dann eine Zufällige ID der TEILNEHMERID?
Sonst könntest du verschachtelte Queries verwenden, was aber natürlich nicht so performant ist:
SQL-Anweisung
1: 2: 3: 4: 5: 6: 7:
| SELECT ID, TEILEHMERID, ERGEBNIS FROM tabelle AS t1 WHERE ERGEBNIS = ( SELECT MAX(ERGEBNIS) FROM tabelle AS t2 WHERE t1.TEILEHMERID = t2.TEILNEHMERID ) |
Grüße,
Yogu
PS: Bitte verwende die
<span class="inlineSyntax">{PROTECTTAGbd8e04c1aa8be83629b488502367c501}</span>- statt den
<span class="inlineSyntax"></span>-Tags.
Kostas - Sa 09.07.11 08:11
| Zitat: |
Hallo,
was passiert denn, wenn du das ID-Feld einfach noch mit in die SELECT-Klausel mit aufnimmst? Bringt er dann eine Zufällige ID der TEILNEHMERID?
|
Wenn das ID Feld im Select vorkommt, muss es auch group by vorhanden sein.
Als Ergebnis würde ich dann alle Datensätze bekommen da die ID eindeutig is.
| Zitat: |
Sonst könntest du verschachtelte Queries verwenden, was aber natürlich nicht so performant ist:
|
Ja natürlich, daran habe ich nicht gedacht. So wird es funktionieren.
Besten Dank und noch einen schönen Tag.
| Zitat: |
PS: Bitte verwende die <span class="inlineSyntax">{PROTECTTAGce95ac736f699889e3f1e163b993e5f9}</span>- statt den <span class="inlineSyntax"></span>-Tags.
|
Gibt es eine Liste der Tags?
Yogu - Sa 09.07.11 19:42
Kostas hat folgendes geschrieben : |
| Gibt es eine Liste der Tags? |
Unter
Bereiche, wo standardmäßig
Delphi steht, kannst du verschiedene Code-Tags auwählen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!