2. labor, adatok feltöltése - folytatás és egyszerű SQL lekérdezések

Vissza a labor főoldalára.

  1. Indítsd el a Ampps-t.
  2. Indítsd el a MySQL Workbench-et, csatlakozz a lokális MySQL szerverhez

    • Töltsd le a hr.sql állományt.
    • A MySQL Workbenchben nyiss egy új SQL tab-ot, töltsd be az előbbi SQL állományt és hajtsd végre.
    • Tanulmányozd az új adatbázis szerkezetét, ami itt is látható (kivéve a job_history táblát):
      hr model
    • A MySQL Workbench Modellerben készítsük el a hr adatbázis EK modelljét. (Home, Models, Kis nyil, Create EER Modell from Database, ...)
      Ebben nincsenek benne a fenti kapcsolatok. Add hozzá a fenti kapcsolatokat és a job_history értelemszerű kapcsolatait. (Tipp: a Diagram ablak bal oldalán a legalsó ikon (kis pipettával) segítségével lehet meglévő attribútumok között kapcsolatokat létrehozni.)
    • Egy-egy létrehozott kapcsolat vonalára a jobb gombbal kattintva vizsgáld meg a létrejövő Idegen Kulcs (Foreign Key) megszorításokat.
    • A Menü sorban a Database/Syncronize model elemre kattintva a hozzáadott Idegen Kulcs (Foreign Key) megszorításokat hozd létre az adatbázisban is.
    • Vizsgáld meg az eredményt.

    • Töltsd le a northwind.sql állományt.
    • A MySQL Workbenchben nyiss egy új SQL tab-ot, töltsd be az előbbi SQL állományt és hajtsd végre.
    • Tanulmányozd az új adatbázis szerkezetét, ami itt is látható:
      northwind
                ER
    • A MySQL Workbench Modellerben készítsük el a northwind adatbázis EK modelljét. (Home, Models, Kis nyil, Create EER Modell from Database, ...)
      Hasonlítsd össze a fenti modellel.


      A következő feladatokban egy-egy SQL lekérdezést kell megírni. Először a HR adatbázisból kérdezünk le különböző adatokat.


  3. Az összes alkalmazott neve, először a vezetéknév, majd a keresztnév. Az oszlop neve legyen Vezeteknev ill. Keresztnev.
  4. Most  egy oszlopban legyenek a teljes nevek Nyomtatasi Nev fejléccel, de a vezetéknév csupa nagybetűvel legyen. (Tipp: Innen kell valami https://dev.mysql.com/doc/refman/5.7/en/string-functions.html )
  5. Listázzuk ki azon DEPARTMENT_ID-ket, ahol van alkalmazott. (De mindegyik csak egyszer szerepeljen.)
  6. A listázandó oszlopok: DEPARTMENT_ID, Vezeteknev, Keresztnev. Legyen csoportosítva a
    DEPARTMENT_ID-k szerint és az egy osztályon dolgozók legyen azon belül névsorban felsorolva.
  7. Minden alkalmazottra listázzuk ki a nevét, fizetését és az utána fizetendő munkáltatói járulékot (ami 22%-a fizetésnek). Az oszlop neve legyen Jarulek és legyen 10-el oszthatóra kerekítve. (Tipp: Innen kell valami https://dev.mysql.com/doc/refman/5.7/en/numeric-functions.html )
  8. Hány alkalmazott van és mennyi a fizetésük összesen.
  9. Hányféle különböző pozíció (JOB_ID) van.
  10. Listázzuk ki azon alkalmazottak összes adatait, akiknek a JOB_ID-jében szerepel valahol SA és jutalékuk (COMMISSION_PCT) legalább 0.3, vagy pedig a 10-es osztályon dolgoznak.