Bosna i Hercegovina



#1 20.08.2016-22:34
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: MySQL SELECT Query naredbe
Vrste MySQL upita:
SELECT StatementPozivanje podataka iz tablice
SELECT LIMIT StatementLimitirano pozivanje podataka iz tablice
INSERT StatementUpis podataka u tablicu
UPDATE StatementAžuriranje podataka u tabeli
DELETE StatementBrisanje podataka u tabeli
DELETE LIMIT StatementLimitirano brisanje podataka u tabeli
TRUNCATE TABLE StatementBrisanje svih podataka iz tabele
UNION OperatorSpajanje podataka iz jedne ili vise tabela bez duplikata
UNION ALL OperatorSpajanje podataka iz jedne ili vise tabela sa duplikatima
INTERSECT OperatorRaskrizje dva seta rezultata
SubqueriesUpit unutar upita

Pozdrav
Ovaj komentar je mijenjan 1 puta. zadnja izmjena 05.09.2016-19:17 od strane zxz. ↑  ↓

#2 20.08.2016-22:46
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: SELECT Naredba
Izjava MySQL SELECT koristi se za dobivanje zapisa iz jedne ili više tablica u MySQ.
Na pocetku je mozda dobro i napomenuti da Mysql takodje ne razlikuje velika i mala slova, sem trigera (okidaca) ali je ustaljeno da se naredbe pisu velikim slovima.
Trigeri su imenovani objekti baze koji su povezani sa nekom tabelom i aktiviraju se kada se
desi određeni događaj (Insert, Update i Delete) na toj tabeli. Trigeri se automatski pozivaju od
strane MySQL-a (ne koristi se Execute naredba). Sami trigeri nemaju ulazne ni izlazne
parametre. Triger se poziva prilikom svakog izvršenja određene naredbe odnosno svaki put
kada se desi određeni događaj.
U svom naj jednostavnijem obliku izgleda ovako:
DownloadIzvorni kod (Text):
  1. SELECT expressions
  2. FROM tables
  3. [WHERE conditions];

Međutim, puna sintaksa za SELECT u MySQL je:
DownloadIzvorni kod (Text):
  1. SELECT [ ALL | DISTINCT | DISTINCTROW ]
  2.        [ HIGH_PRIORITY ]
  3.        [ STRAIGHT_JOIN ]
  4.        [ SQL_SMALL_RESULT | SQL_BIG_RESULT ] [ SQL_BUFFER_RESULT ]
  5.        [ SQL_CACHE | SQL_NO_CACHE ]
  6.        [ SQL_CALC_FOUND_ROWS ]
  7. expressions
  8. FROM tables
  9. [WHERE conditions]
  10. [GROUP BY expressions]
  11. [HAVING condition]
  12. [ORDER BY expression [ ASC | DESC ]]
  13. [LIMIT [offset_Broj] Broj_Reda | LIMIT BrojRedova OFFSET offset_broj]
  14. [PROCEDURE Im_eProcedure]
  15. [INTO [ OUTFILE 'file_name' options
  16.        | DUMPFILE 'file_name'
  17.        | @Tabela1, @Tabela2, ... @variable_n]
  18. [FOR UPDATE | LOCK IN SHARE MODE];

Pozdrav
Ovaj komentar je mijenjan 2 puta. zadnja izmjena 23.08.2016-10:01 od strane zxz. ↑  ↓

#3 20.08.2016-22:55
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: ALL Naredba
Vraća sve redove kolona koje smo odabrali.
ALL, DISTINCT i DISTINCTROW opcije definišu da li će biti vraćeni redovi u kojima se
vrednosti ponavljaju. Ako nijedna opcija nije navedena podrazumevana opcija je ALL
(vraćaju se svi redovi). DISTINCT i DISTINCTROW su sinonimi i nalažu eliminisanje
redova sa dupliranim vrednostima.
Primjer:
SELECT ALL ImePOlja1,Imepolja2, ImePolja3 FROM ImeTabele.

Imena kolona su Polje1 Polje2 itd
Pozdrav
Ovaj komentar je mijenjan 1 puta. zadnja izmjena 20.08.2016-23:27 od strane zxz. ↑  ↓

#4 20.08.2016-23:00
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: Distinct
DISTINCT uklanja duplikate u prikazu odabranog.
Primjer:
SELECT DISTINCT ImePolja FROM ImeTabele.
Znaci prikazat ce samo jedinstvene podatke u ovom polju. Niti jedan se nece ponoviti isti podataka.
Ova naredba se nemoze kombinovati sa naredbom ALL.
Pozdrav
↑  ↓

#5 20.08.2016-23:32
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: High_priority
HIGH_PRIORITY obaveštava MySQL da upit treba da ima prednost nad svim komandama
UPDATE koje čekaju pristup tabelama navedenim u upitu.
Pozdrav
↑  ↓

#6 20.08.2016-23:34
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: Straight_join
STRAIGHT_JOIN na samom početku komande nalaže optimizatoru upita da
spoji tabele redosledom koji je korisnik naveo.
Pozdrav
↑  ↓

#7 22.08.2016-18:55
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: SQL_SMALL_RESULT, SQL_BIG_RESULT i SQL_BUFFER_RESULT
SQL_SMALL_RESULT, SQL_BIG_RESULT i SQL_BUFFER_RESULT omogućavaju
optimizovanje upita. Pomoću opcija SQL_SMALL_RESULT i SQL_BIG_RESULT
obaveštava se MySQL da korisnik očekuje da će se skup rezultata upita sastojati od
malog, odnosno velikog broja redova. SQL_BUFFER_RESULT nalaže MySQL-u da skup
rezultata smesti u privremenu tabelu. Ova opcija se može iskoristiti kada se zna da će
slanje skupa rezultata klijentskom programu potrajati prilično dugo, a želi se da se izbegne
da on za to vreme blokira tabele iz kojih podaci treba da se učitaju. Ove opcije su MySQLova proširenja ANSI standarda za jezik SQL.
Pozdrav
↑  ↓

#8 23.08.2016-09:50
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: SQL_CACHE i SQL_NO_CACHE
SQL_CACHE i SQL_NO_CACHE nalažu MySQL-u da rezultate smešta, odnosno ne
smešta u memoriju (keš).
Pozdrav
↑  ↓

#9 23.08.2016-09:52
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: Sql_calc_found_rows
SQL_CALC_FOUND_ROWS se koristi u odrebi LIMIT. Zahteva da MySQL izračuna koliko
bi ukupno redova upit vratio kada nebi sadržao odredbu LIMIT. Taj broj redova se zatim
može učitati pomoću opcije SELECT FOUND_ROWS().
Pozdrav
Ovaj komentar je mijenjan 2 puta. zadnja izmjena 25.08.2016-08:59 od strane zxz. ↑  ↓

#10 25.08.2016-09:13
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: WHERE klauzula
Iza WHERE Klauzule pisemo uslov prema kome zelimo dohvatiti podatke iz tabele ili tabela.
Primjer:
SELECT * FROM `prodaja` WHERE Ime='Jabuka'
Pozdrav
Ovaj komentar je mijenjan 1 puta. zadnja izmjena 25.08.2016-21:47 od strane Avko. ↑  ↓

#11 25.08.2016-09:19
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: Group By
Ova odredba omogućava grupisanje učitanih redova. Ona je korisna samo kada se
upotrebi u kombinaciji sa funkcijama koje deluju na grupe redova (agregatne funkcije:
MIN(), MAX(), SUM(), AVG(), COUNT(), …). Upit:
SELECT COUNT(*) AS Sifra_Artikla, Ime FROM Prodaja GROUP BY Sifra_Artikla
Ovaj upit prebrojava artikle – tj. koliko razlicith arikala ima u tabeli prodaja.
Pozdrav
Ovaj komentar je mijenjan 3 puta. zadnja izmjena 30.08.2016-18:19 od strane zxz. ↑  ↓

#12 25.08.2016-23:18
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: Having
Odredba GROUP BY kojoj je dodata odredba HAVING djeluje na sličan način kao komanda SELECT kojoj je dodata odredba WHERE.
DownloadIzvorni kod (Text):
  1. SELECT faktura, SUM(kolicina * cijena) AS iznos
  2. FROM detalji_fakture
  3. GROUP BY faktura
  4. HAVING SUM(kolicina * cijena) > 10000;
Ovaj upit prikazuje sve fakture čiji je ukupan iznos veći od 10000. Iznos za svaku stavku na fakturi je kolicina * cijena. Ukupan iznos na fakturi je suma iznosa za sve stavke, tj. SUM(kolicina * cijena). Funkcija SUM() vrši sumiranje vrijednosti.
Treba praviti razliku između odredbi WHERE i HAVING.
Odredba WHERE se može upotrijebiti u gotovo svakom upitu da bi se zadao uslov koji se odnosi na pojedinačne redove.
Odredba HAVING se koristi kada određeni uslov treba da važi za cijelu grupu.
U odredbi WHERE se ne mogu koristiti agregatne funkcije, a u odredbi HAVING mogu.
Pozdrav
↑  ↓

#13 28.08.2016-10:52
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: Order By
Opcija ORDER BY će složiti redove po koloni nad kojm je izvrsen ORDER BY po rastućem ili opadajućem redolsedu zavisno dali iza ORDER BY napisemo ASC ili DESC.
Ako iza ORDER BY ne pise nista onda se podrazumijeva ASC.
Taj redosled neće biti očuvan kasnije kada se budu dodavali ili brisali podaci
ORDER BY je opcionalna naredba i nemora biti u upitu.
Pozdrav
Ovaj komentar je mijenjan 1 puta. zadnja izmjena 28.08.2016-11:00 od strane zxz. ↑  ↓

#14 28.08.2016-11:00
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: LIMIT naredba
LIMIT klauzula određuje maksimalan broj redova sa kojima ćemo manipulisati.
Korisna je u kombinaciji sa klauzulom ORDER BY ili kada se želi da se spriječi brisanje
prevelikog broja redova. ORDER BY se koristi u kombinaciji sa LIMIT kada se na primer
želi da se u tabeli izbriše samo n najstarijih redova.
LIMIT je takodje opcionalna naredba i ako se ne napise onda znaci da ce se prikazati onoliko redova koliko to dozvoljava uslov Where a ako i njega nema onda sve podatke iz odredjene tablice ili tablica sa kojima manipulisemo.
Pozdrav
↑  ↓

#15 30.08.2016-18:16
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,749


Subject: Procedure
Ovo je isto opcionalna naredba. Znaci nemora biti u upitu.
[PROCEDURE Ime_Procedure(Lista_Ulaznih_Parametara)]
Ulazni parametri mogu ali i nemoraju postojati.
Opcija PROCEDURE imenuje proceduru koja treba da obradi podatke u rezultujućem
setu.
Uskladištene procedure (Stored Procedures)
Uskladištena procedura je skup SQL iskaza koji su kompajlirani i sačuvani u trenutku
njenog kreiranja. Veoma su moćne i preko njih mogu da se izvršavaju sve operacije iz
DDL-a i DML-a kao, na primer, kreiranje tabele, izvršavanje UPDATE iskaza nad više
tabela, umetanje, brisanje podataka ali i postavljanje vrednosti (SET) kao i prihvatanje
transakcije (COMMIT) ili vraćanje baze u predhodno stanje (ROLLBACK) ...
U okviru tela procedure ne mogu se koristiti sledeće naredbe: CREATE PROCEDURE,
ALTER PROCEDURE, DROP PROCEDURE, CREATE FUNCTION, DROP FUNCTION,
CREATE TRIGGER, DROP TRIGGER.
Generalno, uskladištene procedure rade kao i procedure u programskim jezicima.
Uskladištena procedura je imenovani objekat baze podataka i čuva se na strani servera
gde se i izvršava, a klijentu se prosleđuju samo rezultati. Prilikom davanja privilegija,
dovoljno je dati privilegiju za pokretanje procedure; nije potrebno davati posebna
ovlašćenja za pojedinačne tabele koje se koriste u okviru nje. Sama procedura može da
vrati paramtere, result set, kod i da kreira kursore. Takođe može da sadrži ulazne
parametre, lokalne promenljive (varijable), numeričke operacije i operacije nad
karakterima, operacije dodeljivanja, SQL operacije i logiku za kontrolu toka izvršavanja.
SQL procedura se kreira CREATE PROCEDURE iskazom, a sa komandne linije se poziva
sa CALL naziv_procedure iskazom. Uvek se kreira u tekućoj bazi. Kada se definiše
procedura, naziv procedure sledi iza službenih reči CREATE PROCEDURE, a potom
slede parametri procedure.

DDL-Jezik za definisanje podataka (Data Definition Language (DDL)) omogućava formiranje
strukture baze podataka.
MDL-Jezik za rad sa podacima (Data Manipulation Language (DML)) služi za umetanje, brisanje
i ažuriranje podataka u bazi.
Pozdrav
↑  ↓

Stranice (2): 1, 2


All times are GMT +01:00. Current time: 16.10.2018-15:23.