You are on page 1of 2

Vježba 3: Grupne SQL funkcije

1. Ispišite najmanju i najveću plaću.


SELECT MAX (salary), MIN (salary) FROM employees

2. Kolika je prosječna plaća svih radnika zaokružena na cijeli broj?


SELECT ROUND(AVG(salary),0) FROM employees

3. Napišite SQL naredbu koja ispisuje najmanju i najveću plaću posebno za svaki posao.
SELECT job_id, MAX(salary), MIN(salary)
FROM employees
GROUP BY job_id

4. Napišite SQL koji ispisuje broj IT programera (job_id = 'IT_PROG')


SELECT 'IT_PROG', COUNT(*)
FROM employees
GROUP BY 'IT_PROG'

5. Ispišite prosječnu plaću i prosječnu zaradu za svaki posao posebno. Zarada se sastoji
od plaće i provizije (atribut commission_pct)
SELECT job_id, AVG(salary), AVG(salary + nvl(commission_pct,0)*salary)
FROM employees
GROUP BY job_id

6. Napišite SQL koji ispisuje koliko svaki odjel treba mjesečno izdvojiti novaca za plaće.
SELECT department_id, SUM(salary)
FROM employees
GROUP BY department_id

7. Ispišite razliku između najveće i najmanje plaće.


SELECT MAX(salary)-MIN(salary)
FROM employees

8. Nađite sve odjele koji imaju više od 10 radnika


SELECT department_id, COUNT(*)
FROM employees
GROUP BY department_id
HAVING COUNT(*) > 10

9. Ispitajte da li su sve šifre radnike (EMPLOYEE_ID) jedinstvene tj. da li postoje dva


radnika sa istom šifrom.¸
SELECT EMPLOYEE_ID, COUNT(*)
FROM employees
GROUP BY EMPLOYEE_ID
HAVING COUNT(*) > 1

10. Ispišite prosječne plaće radnika koji rade za pojedine manager-e.


SELECT manager_id, round (avg (salary))
FROM employees
GROUP BY manager_id

11. Ispišite prosječne plaće po odjelu i poslu.


SELECT AVG(salary) FROM employees
GROUP BY job_id

12. Ispišite prosječnu plaću osoba rođenih nakon 1980. godine

SELECT AVG(salary) FROM employees


WHERE hire_date > TO_DATE ('1.1.1980.', 'dd, mm, yyyy.')

You might also like