Jag är ju inte riktikgt hemma på det här med sql, men tänkte att detta borde göras med sql. Jag ska räkna ut hur många procent som varje Answercount är inom samma id, så alla som har ID = 2 är 100% tillsammans.
"UPDATE [PollAnswers] SET [AnswerPercent] = [AnswerCount] * ((SUM ([AnswerCount] WHERE ID=2))/(COUNT([AnswerCount] WHERE ID = 2)))"
Funkar inte riktigt, någon som har bättre förslag?
Förutsätter att du har någon kolumn som identifierar vilken fråga det gäller. Jag kallar den answerid.
UPDATE PollAnswers as pa
SET AnswerPercent =
(select cast(sum(case when answerid = pa.answerid then 1 else 0 end) as decimal(10,2))/
count(*) from pollanswers where id = 2)
WHERE ID = 2
"UPDATE [PollAnswers] SET [AnswerPercent] = [AnswerCount] * ((SUM ([AnswerCount] WHERE QID=Q))/(COUNT([AnswerCount] WHERE QID = Q)))"
Alltså jag vill Uppdatera alla svar som finns för en fråga.
Kan ju finnas fem svar till fråga x och då vill jag i en SQL sats beräkna procenten för de fem.
Alltså
QID AnswerCOunt AnswerPercent
2 7 X
2 0 X
2 1 X
3 2 x
3 17 x
alltså jasg vill med en sql query fördela de 100% på svaren. hoppas det går att förstå
10personer har svarat på fråga 2
19 personer har svarat på fråga 3
det jag vill är att uppdatera kolumnen som heter AnswerPercent med hur många procent det är. Alltså hur många procent 7 utgör av alla som svarat på fråga två.
det måste vara bra förklarat. När man kör den här sql satsen så ska alla AnswerPercent uppdateras för den frågan.
jag har även ett AnswerID
QID AnswerCOunt AnswerPercent
2 7 X
2 0 X
2 1 X
3 2 x
3 17 x
Operationen måste använda en fråga som kan uppdateras. JAg får inte till det där med (select count(*) from .... hur skriver man det egentligen i access