Einzelnen Beitrag anzeigen

Kostas

Registriert seit: 14. Mai 2003
Ort: Gerstrhofen
1.095 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: SQL group by jedoch nur 10 records pro Gruppe

  Alt 7. Jan 2024, 11:36
Hallo Holger,

vielen Dank für deinen Vorschlag.
Du hast es angesprochen. Manchmal komme die Daten eben nicht aus einer Tabelle die schön selectiert werden können, sondern von einer SPs. Auch in meinem Fall ist es so dass die einzelnen Mitarbeiter über eine SP die auch eine andere SP aufruft um alle Daten zu ermitteln. Ist ein komplexer Vorgang der nicht über Selects zu ermitteln ist.

Aus deinem Vorschlag würde der innere select mit first 10 die Daten von der SP holen. Das übergeordnete Select um die Abteilungssumme zu bilden ebenfalls aus der gleichen SP. Dummerweise benötige ich jetzt auch noch die 10 "teuersten" Mitarbeiter einer Abteilung aufgeführt. Also die komplette Konstruktion nochmals wobei diesmal die Abteilungssumme nicht benötigt wird sondern die Mitarbeiter.

Ich dachte, ich erzeug ein Execute Block oder eine neue SP. Die erste Aufgabe, die SP die die Daten liefert in einer GTT per CREATE GLOBAL TEMPORARY TABLE abzulegen. Dann kann ich deinen Vorschlag verwenden und indexiert mehrfach auf die GTT zugreifen. Da in einer SP die GTT nicht angelegt werden kann, habe ich gesehen dass IBExpert diese anlegen kann. Habe ich noch nie gebraucht. Mal sehen ob das ein Vorteil bringt.
  Mit Zitat antworten Zitat