select a.CLASSCODE, a.CLASSNO, a.CHNAME, c.SYSPERCSCORE 'Last Yr T2', c.overcondgradeconversioncompcode 'Last Yr Conduct', d.SYSPERCSCORE 'This Yr T1', d.overcondgradeconversioncompcode 'This Yr Conduct', d.SYSPERCSCORE - c.SYSPERCSCORE 'Diff'from VW_STU_LATESTSTUDENT a join TB_ASR_STUDASSESSDATA c on a.SUID = c.SUID and a.STUID = c.STUID and c.SCHYEAR = a.SCHYEAR-1 and c.TIMESEQ = 1200 left outer join TB_ASR_STUDASSESSDATA d on a.SUID = d.SUID and a.STUID = d.STUID and a.SCHYEAR = d.SCHYEAR and d.TIMESEQ = 1100 where a.classlvl=? and a.schyear=? order by Diff desc 可以為以上 SQL 加上本學年插班生紀錄,以及能計算出每名上學年及本學年學生總平均分的 標準分(Z-Score)? order by 標準分進步(本學年學生標準分 - 上學年學生標準分)
你好, 想先了解一下"插班生"的資料, 你在WEBSAMS系統那個位置輸入?? 我只找到在 學生資料 > 學生概況 > 在學資料 , 在"學生狀況" 可以輸入"離校" 請提供詳細資料 , 或聯絡校主作進一步了解... 謝謝
select a.CLASSCODE, a.CLASSNO, a.CHNAME, c.SYSPERCSCORE 'Last Yr T2', c.overcondgradeconversioncompcode 'Last Yr Conduct', d.SYSPERCSCORE 'This Yr T1', d.overcondgradeconversioncompcode 'This Yr Conduct', d.SYSPERCSCORE - c.SYSPERCSCORE 'Diff'from VW_STU_LATESTSTUDENT a join TB_ASR_STUDASSESSDATA c on a.SUID = c.SUID and a.STUID = c.STUID and c.SCHYEAR = a.SCHYEAR-1 and c.TIMESEQ = 1200 left outer join TB_ASR_STUDASSESSDATA d on a.SUID = d.SUID and a.STUID = d.STUID and a.SCHYEAR = d.SCHYEAR and d.TIMESEQ = 1100 where a.classlvl=? and a.schyear=? order by Diff desc 是指在以上SQL 的最佳進步奬,希望能夠提取到 This Yr T1 (本學年) :插班生總平均分資料 'Last Yr T2 (上學年) 在本學年離校生的上學年總平均分資料及在本學年留班生的上學年總平均分資料。 自行用Excel 更準碓計算出 Z-Score. 唔知解釋得清楚嗎? 謝謝你。
明白,插班生是不能透過SQL抽取出來的,但能否 從以上提取最佳進步奬的SQL,包括下列情況的學生總平均分資料: 'Last Yr T2' (上學年) 在本學年離校生的上學年總平均分資料及在本學年留班生的上學年總平均分資料。 謝謝
你好, 按你的要求 , 最簡單的方法是把學生的"在學狀況"顯示出來, 再配合你現時的SQL, 就可以列出一個LIST , 你可以用EXCEL 做篩選, 就可以列出 "本學年離校生" 和 "本學年留班生" , 也可以知道上學年的總平均分 但如果你只要"留班生"和"離校生" , 可以在WHERE句子內加上 and mon.CODE_ID in ('1','5') select a.CLASSLVL, a.CLASSCODE, a.CLASSNO, a.enname, a.CHNAME, (case when mon.CH_DES is null then '在學' else mon.CH_DES end) '狀況', c.SYSPERCSCORE 'Last Yr T2', c.overcondgradeconversioncompcode 'Last Yr Conduct', d.SYSPERCSCORE 'This Yr T1', d.overcondgradeconversioncompcode 'This Yr Conduct', d.SYSPERCSCORE - c.SYSPERCSCORE 'Diff' from wsadmin.VW_STU_LATESTSTUDENT a LEFT OUTER JOIN wsadmin.TB_STU_STUSCHREC sr ON a.SUID=sr.SUID AND a.STUID=sr.STUID AND a.SCHYEAR=sr.SCHYEAR AND a.SCHLVL=sr.SCHLVL AND a.SCHSESS=sr.SCHSESS AND a.CLASSLVL=sr.CLASSLVL AND a.CLASSCODE=sr.CLASSCODE LEFT OUTER JOIN wsadmin.TB_HSE_COMMON mon ON sr.SUID=mon.SUID AND sr.STATUS=mon.CODE_ID and mon.TB_ID='STUDST' left outer join wsadmin.TB_ASR_STUDASSESSDATA c on a.SUID = c.SUID and a.STUID = c.STUID and c.SCHYEAR = a.SCHYEAR-1 and c.TIMESEQ = 1200 left outer join wsadmin.TB_ASR_STUDASSESSDATA d on a.SUID = d.SUID and a.STUID = d.STUID and a.SCHYEAR = d.SCHYEAR and d.TIMESEQ = 1100 where a.schyear=? and mon.CODE_ID in ('1','5') and a.classlvl=? order by Diff desc
你好, 請先執行這個沒有分類的SQL,看看有沒有資料 select a.CLASSLVL, a.CLASSCODE, a.CLASSNO, a.enname, a.CHNAME, (case when mon.CH_DES is null then '在學' else mon.CH_DES end) '狀況', c.SYSPERCSCORE 'Last Yr T2', c.overcondgradeconversioncompcode 'Last Yr Conduct', d.SYSPERCSCORE 'This Yr T1', d.overcondgradeconversioncompcode 'This Yr Conduct', d.SYSPERCSCORE - c.SYSPERCSCORE 'Diff' from wsadmin.VW_STU_LATESTSTUDENT a LEFT OUTER JOIN wsadmin.TB_STU_STUSCHREC sr ON a.SUID=sr.SUID AND a.STUID=sr.STUID AND a.SCHYEAR=sr.SCHYEAR AND a.SCHLVL=sr.SCHLVL AND a.SCHSESS=sr.SCHSESS AND a.CLASSLVL=sr.CLASSLVL AND a.CLASSCODE=sr.CLASSCODE LEFT OUTER JOIN wsadmin.TB_HSE_COMMON mon ON sr.SUID=mon.SUID AND sr.STATUS=mon.CODE_ID and mon.TB_ID='STUDST' left outer join wsadmin.TB_ASR_STUDASSESSDATA c on a.SUID = c.SUID and a.STUID = c.STUID and c.SCHYEAR = a.SCHYEAR-1 and c.TIMESEQ = 1200 left outer join wsadmin.TB_ASR_STUDASSESSDATA d on a.SUID = d.SUID and a.STUID = d.STUID and a.SCHYEAR = d.SCHYEAR and d.TIMESEQ = 1100 where a.schyear=? and a.classlvl=? order by Diff desc
不如先在WEBSAMS內的 代碼管理 > 編修代碼表 ,選擇 "學生狀況" 看看設定有沒有不同,另外代碼是否1和5 ?? 另外,執行一條SQL是只抽取 代碼是1和5 , 只出全年離校和留級生。 建議你可以輸入以往的學年去查下是否正確。 select a.CLASSLVL, a.CLASSCODE, a.CLASSNO, a.enname, a.CHNAME, (case when mon.CH_DES is null then '在學' else mon.CH_DES end) '狀況', c.SYSPERCSCORE 'Last Yr T2', c.overcondgradeconversioncompcode 'Last Yr Conduct', d.SYSPERCSCORE 'This Yr T1', d.overcondgradeconversioncompcode 'This Yr Conduct', d.SYSPERCSCORE - c.SYSPERCSCORE 'Diff' from wsadmin.VW_STU_LATESTSTUDENT a LEFT OUTER JOIN wsadmin.TB_STU_STUSCHREC sr ON a.SUID=sr.SUID AND a.STUID=sr.STUID AND a.SCHYEAR=sr.SCHYEAR AND a.SCHLVL=sr.SCHLVL AND a.SCHSESS=sr.SCHSESS AND a.CLASSLVL=sr.CLASSLVL AND a.CLASSCODE=sr.CLASSCODE LEFT OUTER JOIN wsadmin.TB_HSE_COMMON mon ON sr.SUID=mon.SUID AND sr.STATUS=mon.CODE_ID and mon.TB_ID='STUDST' left outer join wsadmin.TB_ASR_STUDASSESSDATA c on a.SUID = c.SUID and a.STUID = c.STUID and c.SCHYEAR = a.SCHYEAR-1 and c.TIMESEQ = 1200 left outer join wsadmin.TB_ASR_STUDASSESSDATA d on a.SUID = d.SUID and a.STUID = d.STUID and a.SCHYEAR = d.SCHYEAR and d.TIMESEQ = 1100 where a.schyear=? and mon.CODE_ID in ('1','5') order by Diff desc 但如果老師做了以上的動作也執行不到,請聯絡校主作進一步跟進。謝謝