USE AdventureWorksOBP

--statistika brzine
--cilj je smanjiti logical reads, smanjuejmo ga kroz indexe
SET STATISTICS IO ON

Select s.IDStavka, s.RacunID,s.Kolicina from Stavka as s
Where s.Kolicina > 5  --AND S.PopustUPostocima > 0.2

	Create nonclustered index iStavkaKolicina 
	on Stavka (Kolicina) --uvijek optimiziramo sto smo upisali u where dijelu

	DROP INDEX iStavkaKolicina on Stavka

	Create nonclustered index iStavkaKolicina 
	on Stavka (Kolicina) INCLUDE (RacunID) 

	/*
	KUHARICA
	1.Pogledamo upit koji dobijemo
	2. Pogledati cemo where i definirati ih u indexe
	3. Dodati dodatne atribute prema WHERE upitu
	*/

	--ZAD 3.
	Select IDProizvod, Naziv, PotkategorijaID FROM Proizvod 
	WHERE PotkategorijaID = 12

	Create nonclustered index iProizvoda
	on Proizvod (PotkategorijaID) INCLUDE (Naziv)

	--Zad 5.
	Select Boja, Count(*) as Cnt FROM Proizvod 
	WHERE PotkategorijaID = 12 GROUP BY Boja ORDER BY Cnt DESC

	Create nonclustered index ICND
	on Proizvod (PotkategorijaID) INCLUDE (Boja)

	--Zad 7.
SELECT IDRacun, DatumIzdavanja FROM Racun
WHERE DatumIzdavanja BETWEEN '20010702' AND '20010702 23:59:59'

Create nonclustered index iDatum
	on Racun (IDRacun) -- ovdje je bolje bez includa jer sa includom imamo vise threadova INCLUDE (DatumIzdavanja)

