-------------------------
-------- II. rész -------
-------------------------
--2/a Mik az 'Ar' karaktereket tartalmazó betegek adatai?
SELECT *
FROM patient
WHERE name LIKE '%Ar%'
OR name LIKE '%ar%';
--2/b Mi az azonosítója és a kora a ' Henry' string-gel kezdődő betegeknek?
SELECT *
FROM patient
WHERE name LIKE 'Henry%';
--4/a Hozzatok létre, majd töltsetek fel egy táblát úgy, hogy a következő adatokat tartalmazza,
--majd válasszátok ki azokat a recordokat, amelyek cost attribútuma nem 'üres'.
drop table treatmentvar;
CREATE TABLE treatmentvar
  (
    treatment_id VARCHAR(255) PRIMARY KEY,
    patient_id   VARCHAR(255),
    COST         NUMBER
    );
INSERT
INTO treatmentvar
  (
    treatment_id,
    patient_id,
    COST
  )
  VALUES
  (
    'T001',
    'P9700',
    129
  );
INSERT INTO treatmentvar
  (treatment_id, patient_id
  ) VALUES
  ('T002', 'P1500'
  );
INSERT INTO treatmentvar
  (treatment_id, patient_id
  ) VALUES
  ('T003', 'P9500'
  );
INSERT
INTO treatmentvar
  (
    treatment_id,
    patient_id,
    COST
  )
  VALUES
  (
    'T004',
    'P4000',
    57
  );
INSERT INTO treatmentvar
  (treatment_id, patient_id
  ) VALUES
  ('T005', 'P9500'
  );
INSERT
INTO treatmentvar
  (
    treatment_id,
    patient_id,
    COST
  )
  VALUES
  (
    'T006',
    'P4000',
    81
  );
INSERT
INTO treatmentvar
  (
    treatment_id,
    patient_id,
    COST
  )
  VALUES
  (
    'T007',
    'P4000',
    81
  );
INSERT
INTO treatmentvar
  (
    treatment_id,
    patient_id,
    COST
  )
  VALUES
  (
    'T008',
    'P8000',
    82
  );
--4/b Opcionális: válasszátok ki az összes rekordot, de úgy, hogy a Cost mezőben hiányzó értékeket 0-val helyettesítitek. (Használd az nvl() függvényt)
SELECT treatment_id, patient_id, NVL(cost, '0') FROM treatmentvar;
--6/c Mit ad vissza a következő lekérdezés?
SELECT *
FROM   treatmentvar
WHERE  cost < 60
       OR cost >= 60;
       
--------------------------
-------- III. rész -------
--------------------------
--1/a)	Írd ki a gyógyszerek nevét kisbetűvel!
SELECT drug, lower(drug) FROM treatment;
--1/b)	Mennyi az átlag fizetés?
SELECT avg(salary)
FROM STAFF;
--1/c)	Egy hónapban a kórház mennyi pénzt költ a dolgozók fizetésére?
SELECT sum(salary)
FROM STAFF;
--1/d)	Mikor volt a legkorábbi és a legkésőbbi kezelés?
SELECT min(t_time) legkorabbi_kezeles,
max(t_time) legkesobbi_kezeles;
FROM treatment;

--1/e)	Hány kezelés volt összesen?
SELECT count(*)
FROM treatment;
--1/f)	Hányszor adtak gyógyszert összesen?
SELECT count(drug)
FROM treatment;
--1/g)	Opcionális: mi a betegek vezeték - és keresztneve? Milyen függvények kellenek ehhez? (használd a google-t)
SELECT
patient_name,
substr(patient_name,0,INSTR( patient_name, ' ')) keresztnev,
substr(patient_name,INSTR( patient_name, ' ')+1) vezeteknev
FROM patient;
SELECT * FROM patient;
-------------------
--2/a)	Melyik kezelést ki végezte és mennyibe került?
SELECT 
t0.treatment_id,
t1.STAFF_NAME,
t0.t_cost
FROM treatment t0
INNER JOIN staff t1
ON t1.STAFF_ID = t0.CONSULTANT;
--2/b)	Melyik beteget ki kezelte és mikor?
SELECT t0.patient_name, 
t2.STAFF_NAME,
t1.T_TIME
FROM patient t0
INNER JOIN treatment t1
ON t1.patient_id = t0.patient_id
INNER JOIN STAFF t2
ON t2.STAFF_ID = t1.CONSULTANT;
--2/c)	Kinek ki a közvetlen főnöke?
SELECT 
t0.STAFF_NAME beosztott,
t1.STAFF_NAME fonok
FROM staff t0
INNER JOIN staff t1
ON t1.staff_id = t0.MANAGER_ID;


