Почему функция sum () не дает точного значения в этом случае? - PullRequest
0 голосов
/ 29 мая 2018

table elaborate_term_result_sheet

select s_id, s_f_name, s_l_name, s_roll_no, s_class, 
       SUM(mid_1_english + mid_2_english)/2 as mid_english, 
       SUM(mid_1_mathematics + mid_2_mathematics)/2 as mid_mathematics,
       semester_final_english,
       semester_final_mathematics,
       SUM((mid_1_english + mid_2_english)/2 + semester_final_english) as total_english, 
       SUM((mid_1_mathematics + mid_2_mathematics)/2 + semester_final_mathematics) as total_mathematics,
       SUM((mid_1_mathematics + mid_2_mathematics)/2 + (mid_1_english + mid_2_english)/2 + semester_final_mathematics + semester_final_mathematics) as total
from elaborate_term_result_sheet 
group by s_f_name, s_l_name
order by s_roll_no;

После запуска созданного запроса он показывает выходной результат, но значение немного колеблется

Result of the query

mid_1_english + mid_2_english = mid_english

mid_1_matmatics + mid_2_matmatics = mid_matmatics

mid_english + semester_final_english = total_english

ематика_математика = общая математика_математика

total = total_english + total_matmatics

1 Ответ

0 голосов
/ 30 мая 2018
select s_id, s_f_name, s_l_name, s_roll_no, s_class, 
   SUM(mid_1_english + mid_2_english)/2 as mid_english, 
   SUM(mid_1_mathematics + mid_2_mathematics)/2 as mid_mathematics,
   semester_final_english,
   semester_final_mathematics,
   SUM((mid_1_english + mid_2_english)/2 + semester_final_english) as total_english, 
   SUM((mid_1_mathematics + mid_2_mathematics)/2 + semester_final_mathematics) as total_mathematics,
   SUM((mid_1_english + mid_2_english)/2 + semester_final_english + (mid_1_mathematics + mid_2_mathematics)/2 + semester_final_mathematics) as total from result_sheet_1 group by s_f_name, s_l_name order by s_roll_no;

единственное изменение, которое дало правильный вывод:

SUM((mid_1_english + mid_2_english)/2 + semester_final_english + (mid_1_mathematics + mid_2_mathematics)/2 + semester_final_mathematics) as total

снимок вывода этого запроса

...