Vet inte hur dina tabeller ser ut men nåt sånt här kan du använda
SELECT AVG(betyg) FROM produkt WHERE produktnamn = Mjukost1
SELECT AVG(betyg) FROM person WHERE namn = Kalle
Hoppas du förstår hur jag menar
3 svar · 452 visningar · startad av bbquearen
Hej alla,
Jag använder Asp.net 1.x, Vb och MS Access. Har en fråga. Jag har en tabell som fylls dynamiskt med testade produkter och vad användarna gett för betyg, det kan se ut här: (antalet produkter och antal personer som röstar varierar):
Tabellen visar betyg (från 1-5)
Produktnamn/person___Kalle___Olle____Nisse___
Mjukost1________________5_____3,5______2_____
Mjukost2________________2______1_______1_____
Detta fungerar fint. Men jag skulle vilja förbättra denna lite. Jag skulle dels vilja ha en kolumn till höger där produkternas medelvärde visas (som i detta faller är Kalle+Olle+Nisses betyg delat med 3). Och så längst ner skulle jag vilja ha medelvärdet av betygsättningen för var och en. Så här skulle jag alltså vilja att det ser ut:
Produktnamn/person___Kalle___Olle____Nisse______medelbetyg__
Mjukost1________________5_____3,5______2____________3,5______
Mjukost2________________2______1_______1____________1,3______
medelbetyg_____________3,5____2_______1,5___________2,5_____
Hur hade ni gjort detta? Använder som sagt MS Access, kan jag på något vis få med medelvärdena redan vid sql-satsen?
Tack på förhand!
//mvh Björn
Vet inte hur dina tabeller ser ut men nåt sånt här kan du använda
SELECT AVG(betyg) FROM produkt WHERE produktnamn = Mjukost1
SELECT AVG(betyg) FROM person WHERE namn = Kalle
Hoppas du förstår hur jag menar
Hej,
Tack för ditt svar Andy K. Tänkte komma med lite mer info. Så här ser mina tabeller ut. De ligger ju kopplade till varandra:
tblKvall>tblTest>tblTestprod>tblTestprodbetyg
Se nedan:
--------------------------------------------------------
[tblMedlem]
medlem_id (primär) , osv
[tblKvall]
kvall_id (primär), medlem_id (vem var kvällen hos), osv
[tblTest]
test_id (primär), testav (t.ex. bananer), kvall_id (till vilken kväll hör testet)
[tblTestprod]
testprod_id (primär), produktnamn, test_id (till vilket test hör produkten)
[tblTestprodbetyg]
testprodbetyg_id (primär), testprod_id (vilken produkt är det), medlem_id (vem har röstat), betyg (vilket betyg gav personen)
... Och som sagt, i min querystring har jag kvall_id som just kvall_id.
--------------------------------------------------------
Hur skulle sql-satserna för medelbetyg av produkt och från person se ut då? (och det är ju viktigt att det bara blir medel av produkt för produkt för just denna kvällens test)
Tack på förhand,
//mvh Björn
Bästa tipset till dig min vän är http://www.w3schools.com/sql/ Där borde du kunna hitta lite mer info om "medel"