0
이 작업을 수행하는 더 간단한 방법이 있어야하지만 SQL에서는 매우 새로운 기능입니다. 이 데이터는 대규모 설문 조사에서 얻었으며 이에 대한 도움이 필요합니다. 각 학급에서 평균 숙제 시간과 총 숙제 시간을 찾고 싶지만 모든 성적이 한 테이블에있는 형식으로 데이터가 구성됩니다. 그렇게 어렵지는 않지만, 알아 내지 못합니다. 감사!설문 조사에서이 SQL을 알아낼 수 없습니다.
SELECT
What_grade_are_you_in as Grade,
How_much_free_time_do_you_have_each_night as FreeTime,
AvgEnglish9HW,
AvgBible9HW,
AvgGov9HW,
AvgMath9HW,
AvgScience9HW,
AvgLang9HW,
AvgArt9HW,
AvgEnglish10HW,
AvgBible10HW,
AvgGov10HW,
AvgMath10HW,
AvgScience10HW,
AvgLang10HW,
AvgArt10HW,
AvgEnglish11HW,
AvgBible11HW,
AvgGov11HW,
AvgMath11HW,
AvgScience11HW,
AvgLang11HW,
AvgArt11HW,
AvgEnglish12HW,
AvgBible12HW,
AvgGov12HW,
AvgMath12HW,
AvgScience12HW,
AvgLang12HW,
AvgArt12HW,
SUM(AvgEnglish12HW, AvgBible12HW, AvgGov12HW, AvgMath12HW, AvgScience12HW, AvgLang12HW, AvgArt12HW) as TotalHW12,
SUM(AvgEnglish11HW,AvgBible11HW,AvgGov11HW,AvgMath11HW,AvgScience11HW,AvgLang11HW,AvgArt11HW) as TotalHW11,
SUM(AvgEnglish10HW,AvgBible10HW,AvgGov10HW,AvgMath10HW,AvgScience10HW,AvgLang10HW,AvgArt10HW) as TotalHW10,
SUM(AvgEnglish9HW,AvgBible9HW,AvgGov9HW,AvgMath9HW,AvgScience9HW,AvgLang9HW,AvgArt9HW) as TotalHW9
FROM `omnihealth-1.HWLoad.HWLoad` ,(
SELECT
AVG(On_average_how_much_homework_do_you_have_per_class_from_English) as AvgEnglish9HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Bible) as AvgBible9HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Gov) as AvgGov9HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Math) as AvgMath9HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Science) as AvgScience9HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Foreign_Language) as AvgLang9HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Fine_Arts) as AvgArt9HW
FROM `omnihealth-1.HWLoad.HWLoad`
WHERE What_grade_are_you_in = 9
SELECT
AVG(On_average_how_much_homework_do_you_have_per_class_from_English) as AvgEnglish10HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Bible) as AvgBible10HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Gov) as AvgGov10HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Math) as AvgMath10HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Science) as AvgScience10HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Foreign_Language) as AvgLang10HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Fine_Arts) as AvgArt10HW
FROM `omnihealth-1.HWLoad.HWLoad`
WHERE What_grade_are_you_in = 10
SELECT
AVG(On_average_how_much_homework_do_you_have_per_class_from_English) as AvgEnglish11HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Bible) as AvgBible11HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Gov) as AvgGov11HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Math) as AvgMath10HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Science) as AvgScience11HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Foreign_Language) as AvgLang11HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Fine_Arts) as AvgArt11HW
FROM `omnihealth-1.HWLoad.HWLoad`
WHERE What_grade_are_you_in = 11
SELECT
AVG(On_average_how_much_homework_do_you_have_per_class_from_English) as AvgEnglish12HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Bible) as AvgBible12HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Gov) as AvgGov12HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Math) as AvgMath12HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Science) as AvgScience12HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Foreign_Language) as AvgLang12HW,
AVG(On_average_how_much_homework_do_you_have_per_class_from_Fine_Arts) as AvgArt12HW
FROM `omnihealth-1.HWLoad.HWLoad`
WHERE What_grade_are_you_in = 12
)
GROUP BY
Grade
ORDER BY
TotalHW12,TotalHW11,TotalHW10,TotalHW9 DESC