Fråga : anmäla för msSQL

Hälsningexperter, I-förmiddagen som frambringar några rapporter, var jag beräknar percetagesna för olikt, värderar. På avsluta I summan upp alla percetages och den måste att komma upp till 100%. ting för
The är det, I-förmiddagen som tar det ungefärligt, värderar till något upp, och ibland summan av percetanges kommer upp som 101 eller 102 procent. Jag undrade, om det finns några befaller mig kan måste att inte låta värdera vara därefter medlet för 100.
I, om summan är 101%, hjälp eller förslag egentligen appreciated.

Thanks för något att säga 100%

Any i @TotalParticipantNr_BeginPSet för advance

/* sammanlagd/> = (summan (@MissedNr_BeginP för @CVD12Nr_BeginP- + @CVD34Nr_BeginP- + @CVD56Nr_BeginP- + @CVD78Nr_BeginP- + för @CVD910Nr_BeginP/*+ @IDONTKNOWNr_BeginP */+))
> för
1:
2:
3:
4:
" codeBody " " procentsatser för >/* för class= " för
" klar "

Svar : anmäla för msSQL

Fastställd @TotalParticipantNr_BeginP =
FALL NÄR
(Summa (@CVD12Nr_BeginP + @CVD34Nr_BeginP + @CVD56Nr_BeginP + @CVD78Nr_BeginP + @CVD910Nr_BeginP + @IDONTKNOWNr_BeginP + @MissedNr_BeginP)) > 100 därefter andra 100
Fastställd @TotalParticipantNr_BeginP = (summan (@CVD12Nr_BeginP + @CVD34Nr_BeginP + @CVD56Nr_BeginP + @CVD78Nr_BeginP + @CVD910Nr_BeginP + @IDONTKNOWNr_BeginP + @MissedNr_BeginP))
avsluta


Det är en lösning.
Problemet är, att, när du rundar saker på varje pekar upp, dig får oundvikligen en summa som inte är lika till slutsumman.
Enkelt fall av två delar som avslutar upp med 45.5 och 54.5.
Om du visar dem på en runda, numrera, de ska är 46 och 55.  46+55 = 101.
Andra lösningar  
 
programming4us programming4us