Sql Abfrage: Gehaltserhöhung innerhalb eines Jahres

student10034

Neuer Benutzer
Beiträge
2
Hallo, ich habe folgende Aufgabe, die ich einfach nicht gelöst bekomme. Vielen Dank im Voraus für die Hilfe!
Aufgabe: Finden Sie aus den Akten alle Angestellte, die innerhalb eines Kalenderjahres eine Gehaltserhöhung von mindestens 1000 erhalten haben. Sortieren Sie nach der persnr und Jahr.

Die Tabellen sind:


ABTEILUNG( ABTNR , ABTNAME , BUDGET , CHEFNR )
CHEFNR » PERSONAL.PERSNR

AKTE ( PERSNR , DATUM , POSITION , GEHALT )
PERSNR » PERSONAL.PERSNR

PERSONAL ( PERSNR , VNAME , NNAME , PROJNR , TELEFONNR , GEHALT )
PROJNR » PROJEKT.PROJNR

PROJEKT ( PROJNR , BUDGET , ABTNR )
ABTNR » ABTEILUNG.ABTNR

Die Aufgabe sollte auch unter folgendem Link einsehbar sein :
https://sqlcoach.informatik.hs-kl.d...w=get&task_id=21&taskgroup_id=3&scenario_id=1


Mfg
Student10034
 
Werbung:
Was hast Du denn bisher versucht?

Um es für andere nachvollziehbar zu gestalten, solltest Du die DDL und DML - Befehle zeigen, um die Tabellen zu erstellen und zu befüllen. Dein Link produziert bei mir dies:

upload_2019-7-11_9-47-45.png

da hab ich nun erst mal keinen weiteren Bock drauf, sorry.
 
Danke für die schnelle Antwort. Der Warnhinweis kommt, weil da gestern oder vorgestern deren Zertifikat ausgelaufen ist. Ich verstehe die vorsicht, aber das ist ein offizieller Link unserer Hochschulen. ich habe einfach mal ein Screenshot gemacht von der Seite und lade ihn hier hoch.

Meine bisheriger Lösungsansatz ist:
Select
pe.persnr
,to_char(ak.datum,'YYYY') as JAHR
from Personal pe
join akte ak on ak.gehalt = pe.gehalt
where ak.Gehalt > 1000
order by pe.persnr, ak.datum

Allerdings fehlt da eben die Abfrage, dass die Erhöhung innerhalb eines Jahres sein soll
 

Anhänge

  • Bildschirmfoto 2019-07-11 um 14.48.39.png
    Bildschirmfoto 2019-07-11 um 14.48.39.png
    447,7 KB · Aufrufe: 4
Werbung:
dein Tabellendesign ist unklar. Gehalt ist in zwei tabellen, in akte auch mit Datum. Du kannst aus dem datum das Jahr extrahieren und min(gehalt) und max(gehalt) je Jahr ermitteln und prüfen, ob die Differenz größer 1000 ist.
 
Zurück
Oben