1. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

Sql Abfrage: Gehaltserhöhung innerhalb eines Jahres

Dieses Thema im Forum "MySQL und MariaDB" wurde erstellt von student10034, 11 Juli 2019.

  1. student10034

    student10034 Neuer Benutzer

    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
     
  2. akretschmer

    akretschmer Datenbank-Guru

    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.
     
  3. student10034

    student10034 Neuer Benutzer

    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:

  4. akretschmer

    akretschmer Datenbank-Guru

    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.
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden