01 SUBP

Слични документи
SQL_zadaci sredjeni 2008 baze podataka

Upitni jezik SQL

Fakultet tehničkih nauka, Novi Sad Predmet: ISIBP

Introduction to Programming

Baza fakultet sadrži 3 tabele: tabela studenti sadrzi informacije o studentima Njeni atributi su: indeks indeks studenta (primarni kljuc) ime ime stud

03 SUBP

UPITI NAD JEDNOM TABELOM 1. Izdvojiti šifre svih knjiga select K_SIF from K 2. Izdvojiti šifre knjiga iz tabele K uz imenovanje kolone select K_SIF as

Sveučilište u Zagrebu Fakultet prometnih znanosti Zavod za inteligentne transportne sustave Katedra za primijenjeno računarstvo Vježba: #7 Kolegij: Ba

Introduction to Programming

Microsoft Word - MySQL_3.doc

Introduction to Programming

Baza podataka

Slide 1

SQL Agregacija Jennifer Widom

Introduction to Programming

Introduction to Programming

Microsoft PowerPoint - 6. Query Builder.pptx

АГЕНЦИЈА ЗА БАНКАРСТВО РЕПУБЛИКЕ СРПСКЕ УПУТСТВО ЗА ЕЛЕКТРОНСКО ДОСТАВЉАЊЕ ПОДАТАКА ИЗ ОБЛАСТИ РЕСТРУКТУРИРАЊА БАНАКА Бања Лука, јули године

Tutoring System for Distance Learning of Java Programming Language

Model podataka

PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije

Microsoft Word - WP_kolokvij_2_rjesenja.doc

Програмирај!

PowerPoint Presentation

PowerPoint Presentation

Baze podataka 1

Primenjeno programiranje - Vežbe

Република Србија МИНИСТАРСТВО ПРОСВЕТЕ, НАУКЕ И ТЕХНОЛОШКОГ РАЗВОЈА ЗАВОД ЗА ВРЕДНОВАЊЕ КВАЛИТЕТА ОБРАЗОВАЊА И ВАСПИТАЊА ЗАВРШНИ ИСПИТ У ОСНОВНОМ ОБРА

Razvoj programa, Code::Blocks, struktura programa, printf, scanf, konverzioni karakteri predavač: Nadežda Jakšić

Grananje u programu predavač: Nadežda Jakšić

Kombinatorno testiranje

8 2 upiti_izvjesca.indd

Република Србија МИНИСТАРСТВО ПРОСВЕТЕ, НАУКЕ И ТЕХНОЛОШКОГ РАЗВОЈА ЗАВОД ЗА ВРЕДНОВАЊЕ КВАЛИТЕТА ОБРАЗОВАЊА И ВАСПИТАЊА ЗАВРШНИ ИСПИТ НА КРАЈУ ОСНОВН

УНИВЕРЗИТЕТ У ИСТОЧНОМ САРАЈЕВУ П Р А В И Л А НОРМАТИВНО-ПРАВНЕ ТЕХНИКЕ ЗА ИЗРАДУ OПШТИХ АКАТА УНИВЕРЗИТЕТА У ИСТОЧНОМ САРАЈЕВУ Источно Сарајево, деце

КОПАОНИЧКА ШКОЛА ПРИРОДНОГ ПРАВА СЛОБОДАН ПЕРОВИЋ 32 година обавештава правничку и другу научну и стручну јавност да расписује К О Н К У Р С За пријем

Microsoft Word - Odluka o osnovnim elementima naloga za placanje _3_.doc

PHP proširenja za rad sa bazama podataka Postoje pojedinačna proširenja za različite tipove baza podataka sa svojim bibliotekama funkcija npr. postoji

Informatika szerb nyelven emelt szint Javítási-értékelési útmutató 1312 ÉRETTSÉGI VIZSGA május 13. INFORMATIKA SZERB NYELVEN EMELT SZINTŰ GYAKOR

Република Србија МИНИСТАРСТВО ПРОСВЕТЕ, НАУКЕ И ТЕХНОЛОШКОГ РАЗВОЈА ЗАВОД ЗА ВРЕДНОВАЊЕ КВАЛИТЕТА ОБРАЗОВАЊА И ВАСПИТАЊА ЗАВРШНИ ИСПИТ У ОСНОВНОМ ОБРА

Microsoft Word - Obrazac Izvestaj IR 2012 Apoteka Beograd.doc

Microsoft Word - Upis kandidata ??S sep

Teorija skupova - blog.sake.ba

Uvod u računarstvo 2+2

Test ispravio: (1) (2) Ukupan broj bodova: 21. veljače od 13:00 do 14:00 Županijsko natjecanje / Osnove informatike Osnovne škole Ime i prezime

R u z v e l t o v a 5 5, B e o g r a d, t e l : ( ) , m a i l : c o n t a c p s i t. r s, w w w. p s i t. r s

Studijski primer - Dijagrami toka podataka Softverski inženjering 1

УПУТСТВО ЗА ИЗРАДУ СЕМИНАРСКОГ РАДА ИЗГЛЕД НАСЛОВНЕ СТРАНЕ Семинарски рад се ради у програму Microsoft Word, у фонту Times New Roman (ћирилица), са пр

Baze podataka MySQL Community Server i MySQL Workbench

Microsoft Word - SYLLABUS -Dinamicki

Mathcad - MCADMod MCD

Pojačavači

Универзитет у Београду - Фармацеутски факултет

Tutoring System for Distance Learning of Java Programming Language

Programiranje u C-u ili C++-u Pseudo-slučajni brojevi; Dinamička alokacija memorije 1 ZADACI SA ČASA Zadatak 1 Napraviti funkciju koja generišlučajan

Programski jezici i strukture podataka 2018/2019. Programski jezici i strukture podataka Računarske vežbe vežba 10 Zimski semestar 2018/2019. Studijsk

Република Србија МИНИСТАРСТВО ПРОСВЕТЕ, НАУКЕ И ТЕХНОЛОШКОГ РАЗВОЈА ЗАВОД ЗА ВРЕДНОВАЊЕ КВАЛИТЕТА ОБРАЗОВАЊА И ВАСПИТАЊА ЗАВРШНИ ИСПИТ НА КРАЈУ ОСНОВН

Корисничко упутство апликације езапослени верзија Рачунски центар Електротехничког факултета, Универзитет у Београду

Database Programming with SQL kurs 2017 database design and programming with sql students slajdovi 17-1 Controlling User Access Davanje dozvole (grant

Microsoft Word - 02 Elementi programskog jezika Pascal

Microsoft Word - примјер

Microsoft Word - SIORT1_2019_K1_resenje.docx

Upute za korištenje EasyChair konferencijskog sustava HRO CIGRE 2019 Prijava referata Ako ste već koristili EasyChair na 13. Savjetovanju ili prije ta

Tutoring System for Distance Learning of Java Programming Language

UPUTA ZA POPUNJAVANJE PRIVITKA 1 OBRASCU RSV-2 Privitak 1 Obrascu RSV-2 (dalje u tekstu: Privitak 1) potrebno je popuniti ako dioničko društvo ima viš

Пројектовање Информационих система

PDO

УСЛОВИ УПИСА НА ВИШЕ ГОДИНЕ СТУДИЈА ШКОЛСКОЈ 2018/19. ГОДИНИ 1. Упис наредне године студија Наредна година студија се може уписати уколико је у претхо

Fortran

PowerPoint Presentation

Na osnovu člana 121. Statuta VŠ Primus Gradiška, Senat na sjednici održanoj dana godine, donosi: PRAVILNIK O IZRADI SEMINARSKOG RADA NA VŠ

Microsoft Word - Upoznaj svog klijenta.doc

Osnovi programiranja Beleške sa vežbi Smer Računarstvo i informatika Matematički fakultet, Beograd Jelena Tomašević i Sana Stojanović November 7, 2005

Slide 1

Microsoft Word - Plan numeracije preciscen tekst

ОДГОВОРИ НА НАЈЧЕШЋЕ ПОСТАВЉАНА ПИТАЊА У ВЕЗИ СА ПРИМЕНОМ ОДЛУКЕ О ИЗМЕНАМА И ДОПУНИ ОДЛУКЕ О ИЗВЕШТАВАЊУ БАНАКА ( Службени гласник РС бр. 8/2019 у да

Upute za izradu završnog rada

ФИЛОЛОШКИ ФАКУЛТЕТ Студентски трг 3 Телефон: 011/ , локали 231, 232 и 237 или , , Факс: 011/ dekan

Uvod u takmičarsko programiranje

Р273 Пројектовање база података Примери питања за колоквијум 1. Навести најважније моделе података кроз историју рачунарства до данас. 2. Објаснити ос

З А К О Н

Шифра ученика: Укупан број бодова: Република Србија МИНИСТАРСТВО ПРОСВЕТЕ, НАУКЕ и технолошког РАзвоја ЗАВОД ЗА ВРЕДНОВАЊЕ КВАЛИТЕТА ОБРАЗОВАЊА И ВАСП

I колоквијум из Основа рачунарске технике I СИ- 2017/2018 ( ) Р е ш е њ е Задатак 1 Тачка А Потребно је прво пронаћи вредности функција f(x

No Slide Title

Република Србија МИНИСТАРСТВО ПРОСВЕТЕ, НАУКЕ И ТЕХНОЛОШКОГ РАЗВОЈА ЗАВОД ЗА ВРЕДНОВАЊЕ КВАЛИТЕТА ОБРАЗОВАЊА И ВАСПИТАЊА ЗАВРШНИ ИСПИТ У ОСНОВНОМ ОБРА

Uvod u PHP

070-ALIP2-udzbenik.indb

Programski jezik C

P1.2 Projektovanje asemblera

ЗАВОД ЗА ЈАВНО ЗДРАВЉЕ УЖИЦЕ др.в.маринковића бр. 4, Ужице (031) , факс: (031) Датум: Број:

Uvod u računarstvo 2+2

Microsoft Word - 15ms261

Upute za popunjavanje Obrasca: RNO

I grupa 1. Napisati program koji izračunava i ispisuje zbir 4 najveća od pet brojeva unetih sa standardnog ulaza. ulaz izlaz Analiza: 1.

ВИСОКА ТЕХНИЧКА ШКОЛА СТРУКОВНИХ СТУДИЈА у Новом Саду

Kako spriječiti petlju

COMARC/A Format

Microsoft Word - 1_Uputstvo-za-ocenjivanje_ZI-2018_Matematika Jun.doc

Dijagrami sekvenci

Република Србија МИНИСТАРСТВО ПРОСВЕТЕ, НАУКЕ И ТЕХНОЛОШКОГ РАЗВОЈА ЗАВОД ЗА ВРЕДНОВАЊЕ КВАЛИТЕТА ОБРАЗОВАЊА И ВАСПИТАЊА ЗАВРШНИ ИСПИТ У ОСНОВНОМ ОБРА

NN indd

Транскрипт:

ER model šeme baze podataka: (Sef) (0, N) (0, N) RADNIK (0, 1) SEF (0, N) (Podredjeni) RUKOVODI RADI _NA (1, 1) (0, N) PROJEKAT Šema relacione baze podataka: RADNIK({Mbr, Prez, Ime, Sef, Plata, Datr}, {Mbr}) PROJEKAT({Sifp, Nazp, Ruk}, {Sifp}) RADPROJ({Mbr, Sifp, BrSati}, {Mbr+Sifp}) RADNIK [Sef] RADNIK [Mbr] PROJEKAT [Ruk] RADNIK [Mbr] RADPROJ [Mbr] RADNIK [Mbr] RADPROJ [Sifp] PROJEKAT [Sifp] Null (PROJEKAT, Ruk) = 1

Komande okruženja CONNECT kor.ime/pass[@adresa_servera] DISCONNECT ED otvaranje editora R pokretanje sadržaja editora CLEAR SCREEN DESC ime tabele EXIT 1. UPITI NAD JEDNOM TABELOM SELECT * FROM <naziv relacije Prikaz svih torki date relacije vrednosti svih obeležja 1. Prikazati sadržaj svake od relacija (tabela). SELECT * SELECT <lista obelezja> <lista obelezja> - niz naziva obeležja, razdvojenih zarezom, iza poslednjeg elementa u nizu NE stavlja se zarez, redosled navoñenja obeležja je proizvoljan 1. Prikazati prezimena i imena svih radnika. SELECT prez, ime Opcija DISTINCT SELECT DISTINCT <lista obelezja> 1. Prikazati sva različita prezimena i imena svih radnika. SELECT DISTINCT prez, ime 2

2. Prikazati sve različite plate radnika. SELECT DISTINCT plata 3. Prikazati različite šifre projekata na kojima je angažovan bar jedan radnik. SELECT DISTINCT Sifp FROM radproj; SELECT <izraz_1 [AS] [ naziv_1]> {, <izraz_n [AS] [ naziv_n]>} Operatori: +, -, *, /, Operandi: obelezja, funkcije, izrazi Komentar značenja zagrada: < > - označavaju da je potrebno upisati neki konkretan naziv ili izraz, naravno, bez navodjenja ovih zagrada [ ] označavaju opcione delove naredbe { } označavaju deo naredbe koji se moze ponavljati 0, 1, 2 ili n puta 1. Prikazati prezimena i imena radnika i njihove plate uvećane za 20%. *1.20 2. Prikazati prezimena i imena radnika i njihove plate uvećane za 20%, pri čemu naziv treće kolone treba da bude Povisica. *1.20 as Povisica 3. Prikazati prezimena i imena radnika i njihove plate uvećane za 20%, pri čemu naziv treće kolone treba da bude Povecanje plate. *1.20 as Povecanje plate 4. Prikazati prezimena i imena radnika, ali u jednoj koloni, sa jednim praznim mestom izmeñu imena i prezimena. SELECT ime prez 3

2. Prikazati matični broj i u jednoj koloni ime i prezime radnika SELECT mbr AS "maticni broj", ime ' ' prez AS radnik FROM radnik; SORTIRANJE SELECT <lista izraza> ORDER BY <obelezje [ASC DESC]> {, <obelezje [ASC DESC]>} 1. Prikazati prezimena i imena radnika i njihove plate, sortirano po rastućem redosledu plata. ORDER BY plata; 2. Prikazati prezimena i imena radnika i njihove plate, sortirano po rastućem redosledu plata i unutar iste plate po opadajućem redosledu prezimena. ORDER BY plata, prezime DESC; SELEKCIJA torki SELECT <lista izraza> WHERE <uslov selekcije> Operandi uslova: izrazi Operatori: <, >, <=, >=, =,!=, <> 1. Prikazati vrednosti svih obeležja radnika sa datim prezimenom (Mirkovic). SELECT * WHERE prez = Mirkovic ; 2. Prikazati prezimena, imena i plate radnika sa datim prezimenom (Mirkovic). WHERE prez= Mirkovic ; 4

WHERE LOWER (prez)= mirkovic ; WHERE UPPER(prez)= MIRKOVIC ; 3. Prikazati prezimena, imena i plate radnika sa platom većom od 50000. WHERE plata > 50000; 4. Prikazati prezimena, imena i plate radnika sa platom većom od 50000 i manjom od 60000. WHERE plata > 50000 and plata < 60000; Dodatni operatori poredjenja: x BETWEEN y AND z x [NOT] LIKE <uzorak> x IS [NOT] NULL _ zamena za jedan, % za vise znakova Operatori testa pripadnosti: x [NOT] IN (<lista vrednosti>) x *ANY (<lista vrednosti>) x *ALL (<lista vrednosti>) * {<, >, <=, >=, =,!=} Operator egzistencije vrednosti: [NOT] EXISTS (<lista vrednosti>) Prioritet logičkih operatora: 1. Operatori poreñenja, pripadnosti i egzistencije 2. NOT/ 3. AND/ 4. OR 4. Prikazati prezimena, imena i plate radnika sa platom većom od 50000 i manjom od 60000. 5

WHERE plata BETWEEN 50000 AND 60000; 5. Prikazati prezimena, imena i plate radnika koji se zovu Petar ili Dragana. WHERE ime = Petar or ime = Dragana ; ILI WHERE ime IN ( Petar, Dragana ); ILI WHERE ime = ANY ( Petar, Dragana ); 5. Prikazati prezimena, imena i plate radnika čije je drugo i poslednje slovo imena a. WHERE ime LIKE _a%a ; 6. Prikazati prezimena, imena i plate radnika koji se ne zovu ni Petar ni Dragana. WHERE ime <> Petar and ime <> Dragana ; ili WHERE ime NOT IN ( Petar, Dragana ); ili WHERE ime <> ALL ( Petar, Dragana ); 7. Prikazati radnike u formatu: Radnik: Jovic Jovan ima platu: 15670 dinara. SELECT Radnik: prez ime ima platu: plata dinara. AS Plate radnika 8. Prikazati sve radnike koji zaradjuju vise od 15000 i koji nemaju svog rukovodioca. SELECT * WHERE plata > 15000 AND sef IS NULL 6

9. Prikazati sve radnike koji imaju rukovodioca. SELECT * WHERE sef IS NOT NULL SQL FUNKCIJE naziv_funkcije(agr1, arg2,...argn) funkcija uvek ima vrednost datog tipa VRSTE FUNKCIJA: karakter funkcije numericke funkcije datumske funkcije funkcije za konverziju podataka grupne funkcije KARAKTER FUNKCIJE: LOWER(char) UPPER(char) LTRIM(char) RTRIM(char) CONCAT(char1,char2) REPLACE(char, trazeni string, zamena) SUBSTR(char, m, n) LENGTH(char) vraca numericku vrednost NUMERICKE FUNKCIJE: ROUND(n[,m]) MOD(m,n) SIGN(n) ABS(n) SIN, COS,TAN, SQRT... DATUMSKE FUNKCIJE: ADD_MONTHS(d, n) MONTHS_BETWEEN(d1, d2) SYSDATE FUKCIJE ZA KONVERZIJU PODATAKA TO_CHAR(d[,fmt]) TO_CHAR(n[,fmt]) TO_DATE(char[,fmt]) TO_NUMBER(char[,fmt]) 7

GRUPNE FUNKCIJE AVG([DISTINCT ALL]n) COUNT({* [DISTINCT ALL] izraz}) MAX(izraz) MIN(izraz) SUM([DISTINCT ALL]izraz) ( - označava da se moze koristiti samo jedna od navedenih opcija) 1. Prikazati prosečnu platu radnika. SELECT AVG(plata) 2. Prikazati najveće angažovanje (broj sati) radnika na projektu. SELECT MAX(brsati) FROM radproj; 3. Prikazati broj različitih rukovodilaca projekata (koliko je radnika angažovanih kao rukovodioci projekata). SELECT COUNT(DISTINCT ruk) FROM projekat; 4. Prikazati ukupan broj radnika. SELECT COUNT(*) AS "Broj radnika" 5. Prikazati ukupan broj radnika koji imaju šefa. SELECT COUNT(sef) 6. Prikazati prezimena i imena radnika i matični broj šefa, prikazujući 0 u slučaju kada je matični broj šefa NULL. SELECT prez, ime, NVL(sef,0) AS Rukovodilac 7. Prikazati matični broj, prezime velikim slovima i treće i četvrto slovo prezimena za svakog radnika. SELECT mbr, UPPER(prez), SUBSTR(prez, 3,2) 8

8. Prikazati prezimena i imena radnika i njihove plate uvećane za 6.33% zaokružene na jednu decimalu. SELECT prez, ime, ROUND(plata*1.633, 1) AS Povisica 9. Prikazati prezimena i imena radnika i matični broj njihovog šefa, pri čemu za radnike koje nemaju šefa treba da piše DIREKTOR. SELECT prez, ime, NVL(TO_CHAR(sef), DIREKTOR ) Grupisanje podataka tabele po kolonama sa istom vrednošću SELECT <lista izraza> GROUP BY <obelezje> {, <obelezje>} SELECT sifp, mbr FROM radproj GROUP BY sifp, mbr; 1. Za svaki projekat prikazati šifru projekta i broj radnika koji su na njemu angažovani SELECT sifp, COUNT(mbr) FROM radproj GROUP BY sifp; 2. Za svakog radnika prikazati matični broj i broj projekata na koji je angažovan SELECT mbr, COUNT(sifp) FROM radproj GROUP BY mbr; 3. Za svakog radnika koji je šef prikazati matični broj i broj radnika kojima je šef i njihovu prosečnu platu SELECT sef, COUNT(mbr), AVG(plata) GROUP BY sef; Selektovanje grupa podataka SELECT <lista izraza> GROUP BY <obelezje> {, <obelezje>} HAVING <uslov selekcije grupe> 9

(WHERE se odnosi na torke, a HAVING na grupe torki i uvek ide uz GROUP BY) 1. Prikazati šifru projekta i prosečan broj sati angažovanja radnika, za projekte na kojima je angažovano više od 2 radnika. SELECT sifp, AVG(brsati) FROM radproj GROUP BY sifp HAVING COUNT(mbr) > 2; 2. Prikazati šifru projekta i prosečan broj sati angažovanja radnika, za projekte čija je prva cifra različita od 1 i na kojima je angažovano više od 2 radnika. SELECT sifp, AVG(brsati) FROM radproj WHERE SUBSTR(TO_CHAR(sifp),1,1)<> 1 GROUP BY sifp HAVING COUNT(mbr) > 2; 10

Spisak naredbi za formiranje i popunjavanje tabeli radnik, projekat i radproj: CREATE TABLE radnik (mbr number(6) NOT NULL, prez varchar(12) NOT NULL, ime varchar(12) NOT NULL, sef number(6), plata number(15), datr date ); CREATE Table projekat (sifp number(6) NOT NULL, nazp varchar(20) NOT NULL, ruk number(6) ); CREATE TABLE radproj (mbr number(6) NOT NULL, sifp number(6) NOT NULL, brsati number(2) ); CREATE UNIQUE INDEX idx_radnik ON radnik (mbr asc); CREATE UNIQUE INDEX idx_projekat ON projekat (sifp); CREATE UNIQUE INDEX idx_radproj ON radproj (mbr, sifp); VALUES (100, 'Mitrovic','Milan',null,75000, '31-05-1975'); VALUES (101, 'Mirkovic','Dragana',100,65000, '12-06-1978'); VALUES (102, 'Filipovic','Petar',100,65000, '17-11-1979'); VALUES (103, 'Kljajic','Marija',100,65000, '18-06-1979'); VALUES (104, 'Psodorov','Laza',101,45000, '19-10-1984'); VALUES (105, 'Kapidzic','Pera',101,45000, '21-01-1983'); VALUES (106, 'Peric','Sandra',102,45000, '27-12-1980'); 11

VALUES (107, 'Lazic','Dragana',103,55000, '12-05-1980'); VALUES (108, 'Nadj','Ana',103,55000, '14-11-1986'); VALUES (109, 'Kopanja','Maja',103,25000, '28-10-1988'); VALUES (110, 'Mirkovic','Aleksandar',102,25000, '12-01-1980'); VALUES (111, 'Bojic','Petar',102,27000, '10-12-1982'); INSERT INTO Projekat VALUES (200, 'IS banke',100); INSERT INTO Projekat VALUES (201, 'IS osig drustva',101); INSERT INTO Projekat VALUES (202, 'IS skole',101); INSERT INTO Projekat VALUES (203, 'IS kafica',101); INSERT INTO Projekat VALUES (204, 'IS Kafane',102); INSERT INTO Projekat VALUES (205, 'IS fakulteta',103); VALUES (100, 200,4); VALUES (101, 201,6); VALUES (101, 202,7); VALUES (101, 203,16); VALUES (102, 204,12); VALUES (103, 205,5); VALUES (107, 201,13); VALUES (108, 201,3); VALUES (109, 202,21); VALUES (110, 202,14); VALUES (111, 203,8); 12

VALUES (110, 203,7); VALUES (111, 204,35); VALUES (109, 205,44); VALUES (109, 204,47); VALUES (108, 205,44); 13