Pomoc oko SQL-a

Pomoc oko SQL-a

offline
  • Pridružio: 19 Jun 2008
  • Poruke: 4

Treba da odradim ovo :

1. Izračunati prosek ocena po ID Predmeta
Prikazati u rezultat kolonu PredmetID i sumu ocena, grupisati po koloni PredmetID iz tabele StudentPredmet

2. Izračunati prosek ocena za svakog studenta
Selektovati kolone StudentPredmet.StudentID, Student.Ime, Student.Prezime, Ocena
Koristeći tabele dbo.StudentPredmet, dbo.Student


Rezultat prikazati desc nad kolonom StudentPredmet.StudentID

Ja sam odradio tabele , poglede i dijagrame ali ovo mi nikako ne ide.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Software developer
  • Pridružio: 06 Sep 2005
  • Poruke: 3800
  • Gde živiš: Beograd

prvo bi bilo nesto tipa
select id, avg(ocena) as ocena from predmeti group by id

drugo probaj sam pa javi dal ide, na istu je foru samo trazis druge podatke. I na kraju stavljas order by id desc



offline
  • Pridružio: 19 Jun 2008
  • Poruke: 4

Nisam uspeo nista Sad Javlja gresku : Msg 208, Level 16, State 1, Line 1
Invalid object name 'predmeti'.

offline
  • Software developer
  • Pridružio: 06 Sep 2005
  • Poruke: 3800
  • Gde živiš: Beograd

pa ne mozemo ti ovako reci u cemu je tacan problem. Moras dati vise detalja. Kakav si tacno upit napravio i kakva ti je struktura tabele. Ja sam i ovo napisao kao primer, pitanje je da li imas takve atribute.

Odakle izvrsavas? Ovo je MSSQL? Jesi stavio go pre i posle naredbe?

offline
  • Pridružio: 19 Jun 2008
  • Poruke: 4

Napisano: 17 Mar 2012 14:34

izvrsavam iz MSSQL

ma jesam stavio GO ali nista

Dopuna: 17 Mar 2012 15:34

Sredio sam prvi Smile
Hvala N1k0l4 !

Dopuna: 17 Mar 2012 16:29

Zavrsio sam sve Smile
Hvala puno N1kol4

offline
  • Pridružio: 28 Feb 2015
  • Poruke: 4

Column 'dbo.StudentPredmet.StudentID' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause. meni se ovo pojavljuje. moj upit je

select dbo.StudentPredmet.StudentID, dbo.Student.Ime, dbo.Student.Prezime, dbo.StudentPredmet.Ocena,
AVG (dbo.StudentPredmet.Ocena) as Ocena from dbo.Student inner join dbo.StudentPredmet on dbo.Student.StudentID = dbo.StudentPredmet.StudentID
group by dbo.Student.Ime, dbo.Student.Prezime, dbo.Student.BrojIndexa, dbo.Student.Telefon, dbo.StudentPredmet.PredmetID
order by dbo.Student.StudentID desc

offline
  • Milan
  • Pridružio: 17 Dec 2007
  • Poruke: 14216
  • Gde živiš: Niš

Prilikom korišćenja klauzule GROUP BY, sve kolone koje su navedene u klauzuli SELECT a na koje nije primenjena neka funkcija agregacije, moraju biti navedene u GROUP BY klauzuli. dbo.StudentPredmet.StudentID je uključen u GROUP BY klauzuli, ali dbo.StudentPredmet.Ocena nije koliko vidim. Dodaj i to (ili još bolje ukloni kolonu dbo.StudentPredmet.Ocena, pošto nakon toga imaš primenu funkcije agregacije za računanje prosečne ocene, pa ti dve nisu potrebne) pa probaj ponovo.

offline
  • Pridružio: 28 Feb 2015
  • Poruke: 4

Napisano: 28 Feb 2015 15:10

select dbo.Student.Ime, dbo.Student.Prezime,
avg(dbo.StudentPredmet.Ocena) as srednjaOcena
from dbo.Student INNER JOIN dbo.StudentPredmet on dbo.Predmet.PredmetID = dbo.StudentPredmet.PredmetID
group by dbo.Student.Ime, dbo.Student.Prezime
order by dbo.Student.Ime DESC

gde gresim kada racunam prosecnu po ucenuku

Dopuna: 28 Feb 2015 18:28

ok, ovaj jedan sam uspeo. ovo je prosek ocena po studentId desc

select dbo.Student.Ime, dbo.Student.Prezime, dbo.StudentPredmet.StudentID,
avg(dbo.StudentPredmet.Ocena) as srednjaOcena
from dbo.Student INNER JOIN dbo.StudentPredmet ON dbo.Student.StudentID = dbo.StudentPredmet.StudentID
group by dbo.Student.Ime, dbo.Student.Prezime, dbo.StudentPredmet.StudentID
order by dbo.StudentPredmet.StudentID DESC


jos prosek ocena po ID Predmeta
Prikazati u rezultat kolonu PredmetID i sumu ocena, grupisati po koloni PredmetID iz tabele StudentPredmet
koristeci
tabele dbo.StudentPredmet, dbo.Student
tabele dbo.StudentPredmet, dbo.Student

Ko je trenutno na forumu
 

Ukupno su 583 korisnika na forumu :: 48 registrovanih, 7 sakrivenih i 528 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 1567 - dana 15 Jul 2016 19:18

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 4channer, A.R.Chafee.Jr., aBobban, aljosa7, amaterSRB, AMCXXL, ankebut, Arhiv, beowl, caesar, cikadeda, crowder, Danijel Glavas, Dicus, doktor1964, Faki-Valjevo, Gama, Georgius, goxin, indja, kolateralnasteta, Kubovac, liman2, ljs, ljuba, ljuba.b, lord sir giga, MarKhan, Marko Marković2, matorigile, Metanoja, Mikulino, mirbat, nemkea71, pavle_pzs, Regrut Boskica, sasa.zoric, scimitar19, Serbian Vampire, shmele, Srki94, SsssssNOVI, stegonosa, Vlada78, Vojo Ostoic, Warhawk, yrraf, zlaya011