| Gjoreski | 15.03.2017 17:19 | 
	
		| Predmet:Query radi sporo 
 imam ovakav query koj mi presmeta stajne artikala ali radi sporo.
 Moram da napomenem da imam preko 45000 artikala
 
 
 PreuzmiIzvorni kôd (Visual Basic):SELECT tblArtikli.Artikal_Barkod,tblArtikli.Artikal_Ime,(IFNULL(tblLager.Kolicina_Lager,0)-IFNULL(wProdazba.Kolicina,0)) AS Lager,Artikal_Prodazna_Cena as Cena , (IFNULL(tblLager.Kolicina_Lager,0)-IFNULL(wProdazba.Kolicina,0))*Artikal_Prodazna_Cena AS VkupnoFROM tblArtikliLEFT JOIN tblLagerON tblArtikli.ID_Artikal=tblLager.ArtikalLEFT JOIN wProdazbaON tblArtikli.ID_Artikal=wProdazba.StavkaWHERE (IFNULL(tblLager.Kolicina_Lager,0)-IFNULL(wProdazba.Kolicina,0))<>0
 wProdazba = view koj iscitava prodate artikala i ovde nemamo puno stavka
 tblLager = je tabela sa stajne artikala u magacinu
 
 ideja za nesto pobrzo.
 | 
    
	
		| zxz | 15.03.2017 18:53 | 
	
		| Predmet:Re: Query radi sporo 
 ako mozes nakaci tabelu tblLager lakse ce biti.
 | 
    
	
		| Gjoreski | 15.03.2017 19:28 | 
	
		| Predmet:Re: Query radi sporo 
 sad spremam
 | 
    
	
		| Gjoreski | 15.03.2017 20:00 | 
	
		| Predmet:Re: Query radi sporo 
 Evo baza sa sva podatke
 | 
        | Prilozi: Baza FULL.rar (Velicina datoteke:1.84 MB)
 
 | 
    
	
		| zxz | 15.03.2017 23:05 | 
	
		| Predmet:Re: Query radi sporo 
 Nisu ti polja indeksirana po kojima vezes tabele.
 tblArtikli.ID_Artikal  -->indeksirati
 tblLager.Artikal ---> indeksirati
 wProdazba.Stavka  ->>>indeksirati.
 
 i sve ce da poleti.
 | 
    
	
		| zxz | 15.03.2017 23:14 | 
	
		| Predmet:Re: Query radi sporo 
 Inace su tabele lose skrojene.
 tblLager.Artikal dozvoljava null a nebi smjelo da bude null.
 | 
    
	
		| Gjoreski | 16.03.2017 00:58 | 
	
		| Predmet:Re: Query radi sporo 
 Hvala @ZXZ problem je resen.
 
 Problem je bio u to sto polje Artikal nije bilo indexovano.
 Ja nisam tako upacen u ovo i zmolio bix ako ima vremena ZXZ da malo napise nesto oko ovix indexa i ako ima jos neki drugi ovakvistvari oko stvarajne relacionih baza .
 
 Evo u prilog i fotografije kako je bilo i kao je sad.
 Razlika u brzine rada je ogromna.
 | 
        | Prilozi: Index Error.bmp (Velicina datoteke:1.18 MB)
 Index OK.bmp (Velicina datoteke:1.21 MB)
 
 | 
    
	
		| zxz | 16.03.2017 11:47 | 
	
		| Predmet:Re: Query radi sporo 
 Sta da kazem ovo je jedna citava oblast i tesko je to opisati u jednom postu ali evo neke smjernice a na netu imate toga more jedno.
 Mozda poslije otvoriti novu temu u forumu arhiva koji strsi prazan.
 
 -Indeksi se koriste za brzo pronalaženje nekog zapisa u određenoj koloni.
 -Jako ubrzavaju izvođenje SELECT naredbe, sortiranje, grupiranje...
 -Mogu se sastojati od jedne ili više kolona.
 -Može se postaviti UNIQUE INDEX koji ne dozvoljava da dva retka u istoj koloni imaju istu
 vrijednost.
 | 
    
	
		| zxz | 16.03.2017 11:49 | 
	
		| Predmet:Re: Query radi sporo 
 Indeksi funkcioniraju na slijedeći način:
 -Kad se postavi indeks na nekoj koloni u tablici, MySQL sortira sve zapise iz te kolone i zapiÅ¡e ih u datoteku u  kojoj pohranjuje indekse zajedno s pokazivačem na taj redak u tablici u datoteci s  podacima.
 -Bez indeksa, da bi MySQL pronaÅ¡ao neki zapis u nekoj koloni mora proći kroz sve zapise.
 - S indeksom, MySQL koristeći algoritme za pretragu brzo pronalazi tražene zapise i pomoću pokazivača
 dolazi do podataka zapisanih u tom retku tablice.
 | 
    
	
		| zxz | 16.03.2017 11:51 | 
	
		| Predmet:Re: Query radi sporo 
 Kada kreiramo tablicu mozemo postvaiti indekse za odredjena polja odnosno polja indeksirati.
 Primjer:
 Kod kreiranja tablice
 
 PreuzmiIzvorni kôd (Text):CREATE TABLE uposlenici(ID INT UNSIGNED NOT NULL AUTO_INCREMENT,ime CHAR(30) NOT NULL,prezime CHAR(30) NOT NULL,telefon CHAR(20) NOT NULL,JMBG CHAR(13) NOT NULL,PRIMARY KEY (ID),UNIQUE IDXjmbg(JMBG),INDEX IDXimeiprezime(ime, prezime),INDEX IDXtel(telefon))
 |