Bez imalo zelje za polmikom sa korisnikom koji je zapoceo temu, zbog ostalih korisnika moram da napomenem da ovo jednostavno nije tacno.
Prilikom pokusaja kreiranja indeksa dobijena je sledeca poruka:
Citat:
Cannot create index on view 'marko.dbo.racuni1' because its select list does not include a proper use of COUNT_BIG. Consider adding COUNT_BIG(*) to select list.
S obzirom da je problem, prema korisniku koji je zapoceo temu, resen time sto su sve kolone iz GROUP BY dodate u indeks ispada da je SQL Server iz samo njemu znanih razloga izbacio poruku o gresci koja nema veze sa problemom. Desava se da su poruke o greskama nedovoljno precizne, katkad suvise genericke, pa cak i pogresne, ali je u najmanju ruku neozbiljno ignorisati ih.
Jedno od mnogobrojnih ogranicenja prilikom kreiranja indexed viewa kaze da je u slucaju da se koriste agregatne funkcije obavezna upotreba funkcije COUNT_BIG(*). Ogranicenej je sasvim na liniji greske koja je dobijena. Posto ista nije korigovana, naravno da index ni u drugom slucaju nije mogao da bude kreiran. Stoga bih zamolio korisnika
MarkoBalkan da svojim odgovorom ne dovodi u zabludu druge korisnike.
U ovom pogledu je znaci neophodno dodati jos jednu stavku u SELECT iskazu (COUNT_BIG(*) naprimer), a ukoliko su u kolonama nad kojima se sumira dozvoljene NULL vrednosti onda je neophodno pozvati ISNULL funkciju:
Code:
SUM(ISNULL(dbo.racuni.kolicina,0))
inace ce nas SQL Server obradovati novom porukom '...SUM aggregate of nullable expression..' ili slicno tome.
Tek onda, i to ukoliko su i ostali preduslovi ispunjeni (kompletna lista na [url=http://technet.microsoft.com/en-us/library/ms191432.aspx][/url]) moze da se indeksira pogled. Pogled moze da se napravi naravno, ali ne moze da se indeksira ukoliko sve pobrojano nije ispunjeno. Kreiranje indexed views-a moze da bude velika blagodet za aplikaciju ukoliko se eskivira tuce raznih ogranicenja.
Nezavnisno od indeksiranih pogleda pokusaj kreiranja unique indeksa na koloni za koju korisnik u GROUP BY delu pretpostavlja da nije unique logicki je pogresan.
Pozdrav,
HKL
Sad šta je tu je. A možda će da dođe i ova tvoja tetka iz Bosanske Krupe.