You are on page 1of 2

Predmet: Baze podataka

Vježba 3: Jednostavne SQL funkcije

1. Napišite SQL naredbu koja računa ostatak pri dijeljenju brojeva 1000 i 32.
SELECT MOD(1000, 32) FROM SYS.DUAL;

2. Napišite SQL naredbu koja računa drugi korijen iz broja 5000, te ga zaokružuje na
dvije decimale.
SELECT ROUND(SQRT(5000),2) FROM SYS.DUAL

3. Napišite SQL naredbu koja će ispisati datum koji će biti za 100 dana.
SELECT SYSDATE+100 FROM SYS.DUAL

4. Ispišite prva tri slova imena, te prva četiri slova prezimena za sve radnike koji imaju
plaću veću od 6000 dolara.
SELECT substr(first_name,1,3),substr(last_name,1,4), salary from employees
where salary >6000
5. Ispišite imena i prezimena svih radnika, kao i njihovu plaću uvećanu za 15%, te
zaokruženu na cijeli broj
SELECT UPPER (first_name), UPPER (last_name), FLOOR (salary+(salary*0.15)) FROM
employees
6. Ispišite imena i prezimena radnika sa velikim slovima
5.SELECT UPPER (first_name), UPPER (last_name), FLOOR (salary+(salary*0.15))
FROM employees

7. Izračunajte koliko je dana svaki od radnika zaposlen. Rezultat poredajte po veličini od


najvećeg broja prema najmanjem.
SELECT first_name, last_name, FLOOR(MONTHS_BETWEEN(SYSDATE,
hire_date)) FROM employees ORDER BY MONTHS_BETWEEN (SYSDATE,
hire_date) DESC

SELECT first_name, last_name, round(SYSDATE -hire_date) from employees


ORDER BY round (SYSDATE -hire_date,0)desc
8. Ispišite ime i prezime radnika, te broj mjeseca koliko su zaposleni i to samo za radnike
koji rade više od 200 mjeseci.
SELECT first_name, last_name, MONTHS_BETWEEN(SYSDATE,hire_date)
FROM employees WHERE MONTHS_BETWEEN(SYSDATE,hire_date) >200
ORDER BY MONTHS_BETWEEN(SYSDATE,hire_date)

9. Ispišite imena i prezimena radnika koji imaju duljinu prezimena veću od 8 znakova.
SELECT first_name, last_name FROM employees WHERE LENGTH (last_name)>8

10. Napišite SQL upit koji će vratiti ASCII vrijednosti od svih znakova u nizu 'SQL'. Ispis
treba izgledati ovako:

S Q L
83 81 76
SELECT ASCII('S')AS S,ASCII('Q')AS Q,ASCII('L')AS L FROM SYS.DUAL;

11. Napišite SQL upit koji će izračunati koliko dana je prošlo od vašeg rođenja. Rezultat
zaokružiti na cijeli broj manji ili jednak dobivenom.

SELECT FLOOR (SYSDATE -TO_DATE('08,29,1995','mm,dd,yyyy')) from sys.dual;

12. Ispišite sve radnike koji su zaposleni u kompaniji više od 15 godina.


SELECT first_name, last_name, round (MONTHS_BETWEEN(SYSDATE,
hire_date)/12) from employees WHERE MONTHS_BETWEEN(SYSDATE,
hire_date)/12 > 15

You might also like