From 991a46f66651bbb1d5b04a8b2ba0892cf9e2c115 Mon Sep 17 00:00:00 2001 From: Fpter <30550992+Fpter@users.noreply.github.com> Date: Sun, 28 May 2023 00:03:27 +0700 Subject: [PATCH] Add files via upload --- script.sql | Bin 0 -> 13022 bytes solution.sql | 118 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 118 insertions(+) create mode 100644 script.sql create mode 100644 solution.sql diff --git a/script.sql b/script.sql new file mode 100644 index 0000000000000000000000000000000000000000..f89918344d984e66dbe27c0652f44c3e196a0792 GIT binary patch literal 13022 zcmeHNZBH9V5T38Cl>gvwfix-vgH$2)gE9RwNrT}-^!kJUAZPN5>E}#-{g~A zNMAn7Hn3`PBxitK0md=TQ6I>ue2;n`&@&n0IdwhR`w-Au`6xHQuSpZ_pMlAdwq#8< zezqcAOjZ9mogp8=gPgzmMK` zz!_q`vN)V!01C_We+zlGv8oM}zkuS`kR{6qQl)NE&Xjl)Fs@;-EE~XxT)$QM3F98g zKJZrLEynk2+;OY?GoU}>*TqWj%1hKZ6IZqEYHf^i2>Q7moIOH$fKiSeJz3l~>_vOV z82=bO;|EUC^E8}Rc0pZ?k$w3FWrY6JRo}bgXiD}a2Ya9-27b7A7qgQ71N?qvbzQZa47RhfU`A=%Q!Sn2jzAWrJlDJj9 zM_MB$v()7L>UWm5I`6i6fqjd<{tC|`+G?7Av(+JX^E>SBliR6AOp{_>Vja#fV}49f z55xo9W$Ev^_w}&9v{9!AIl(x#vN2){?&df6A0ldC#1_jR`2X9jdUd}rDktv~!couC zZ*X^h3VXbdK`)^}JRJ<6yNl>OLQ*gvGA>Tf+v^SQ3N~DPPT0cPYTPN|L&Z_5dj;cQ zY4K0R;`Kzhh<0wgn{_K}(tY0WuHZNOxfy_b%eE2v@D4W>MzFk29`(r_LUli2lrH_i zQ}F{D@iD&i8Lve<-)ALYK0#aZtSWEEH@vEQH8Ybo%9q3qHVSLEi104%*Ll)BrH#~g zXAXbX2#u2O>uijFFh;(wdlig>s(UV*cj>ui$#e01%Uo#h{*;@SuV=mW^E%V>JKeTe5o`qw)7Ri8J@za{1sDeEDGCjy#8rUf`{c{Qf%L2=#6Hzv?pI z^U38#fXj^(m%hgaPAvQmFrQr316DvsCOOIJXA74ZJ@*SS(Qe;|tiBku2l-F`OWtvRK zbk&BCm3~`Rd6m(uWUftmjE|SJ!8MPQ=c9_Hzk@GTAK}x_@lUVLJ2V`r2T#whK8!JW z1IJdUo`^ojM=46@G`O_28s%~)z@^5U)WOXMF3Uum)8x{2=TR=B0GAqXl1p35S?ALB z`%x~N0WLM(B$vz(c>SFu;?x+xa#i$+3Qb$7L6d&ZTcov(`b%qL&GIE#Ov`~}TQsv# zY~@E7n^But@jKYPkK<_Z*SI}qZTo1c0XBe77zd?y&_|=LqBveTo?oe&SLwiC-r*}a zc`-S?cXFjv4Hf}*2bu0cqG!OcmawcBPpam{ilxdumNr1UZbC!-p2eG_2H%J5NA-8{ zWNJRMSf)`zc1xMYQsh&&9<;Amrp-r{sm7Dc4Eh_fW$zyI`-=5 < 8, good nếu >=8 ) +select st.stud_id, + CASE + WHEN grade.score < 5 THEN 'Weak' + WHEN grade.score >= 5 AND grade.score < 8 THEN 'Average' + WHEN grade.score >= 8 THEN 'Good' + END +from student as st +join ( + select stud_id,avg( + CASE + WHEN grade = 'A' THEN 10 + WHEN grade = 'B' THEN 8 + WHEN grade = 'C' THEN 6 + WHEN grade = 'D' THEN 4 + WHEN grade = 'E' THEN 2 + ELSE 0 + END + ) as 'score' + from enroll + group by stud_id +) as grade +on st.stud_id = grade.stud_id + +-- điểm số trung bình của các class (quy ra lại theo chữ cái) +select cl.class_id, + case + WHEN grade.score < 5 THEN 'Weak' + WHEN grade.score >= 5 AND grade.score < 8 THEN 'Average' + WHEN grade.score >= 8 THEN 'Good' + end +from class as cl +join ( +select class_id, avg( + case + WHEN grade = 'A' THEN 10 + WHEN grade = 'B' THEN 8 + WHEN grade = 'C' THEN 6 + WHEN grade = 'D' THEN 4 + WHEN grade = 'E' THEN 2 + ELSE 0 + end +) as score +from enroll +group by class_id) as grade +on cl.class_id = grade.class_id + + +-- điểm số trung bình của các course (quy ra lại theo chữ cái) +select cl.class_id, + case + WHEN grade.score < 5 THEN 'Weak' + WHEN grade.score >= 5 AND grade.score < 8 THEN 'Average' + WHEN grade.score >= 8 THEN 'Good' + end +from class as cl +join ( +select class_id, avg( + case + WHEN grade = 'A' THEN 10 + WHEN grade = 'B' THEN 8 + WHEN grade = 'C' THEN 6 + WHEN grade = 'D' THEN 4 + WHEN grade = 'E' THEN 2 + ELSE 0 + end +) as score +from enroll +group by class_id) as grade +on cl.class_id = grade.class_id