學生成績 如何追踪每一名學生歷年全科的成績表現

本文由 yikyi 在 2014-08-21 發表於 "WebSAMS 討論區" 討論區

  1. 55459377

    yikyi
    Expand Collapse

    文章:
    2
    讚:
    0
    我希望可以為全校每一名學生做一個學習檔案,檔案內包括某學生每一科的歷年成績及名次。可以用WEBSAMS 做到嗎?

    例︰學生A

    年級 平均分 滿分 級名次 人數 Eng 滿分 級名次 人數 Chi 滿分 級名次
    S1-T1 86 100 4 199 321 400 23 199 229 300 1
    S1-T2 84 100 6 197 320 400 19 197 245 300 1
    S2-T1 83 100 13 199 322 400 46 199 232 300 1
    S2-T2 85 100 9 198 321 400 22 198 223 300 7
    S3-T1 85 100 8 193 295 400 32 193 231 300 9
    S3-T2 86 100 8 193 329 400 16 193 234 300 5
    S4-T1 88 100 1 196 335 400 5 196 223 300 5
    S4-T2 88 100 1 196 335 400 5 196 223 300 5
    S5-T1 86 100 2 193 325 400 8 193 229 300 28
    S5-T2 86 100 1 193 314 400 14 193 240 300 6
    S6-T1 83 100 1 190 277 400 16 190 215 300 2
    S6-T2 85 100 1 190 335 400 2 190 207 300 6
     
  2. 55459377

    yikyi
    Expand Collapse

    文章:
    2
    讚:
    0
    年級 平均分 滿分 級名次 人數
    S1-T1 86 100 4 199
    S1-T2 84 100 6 197
    S2-T1 83 100 13 199
    S2-T2 85 100 9 198
    S3-T1 85 100 8 193
    S3-T2 86 100 8 193
    S4-T1 88 100 1 196
    S4-T2 88 100 1 196
    S5-T1 86 100 2 193
    S5-T2 86 100 1 193
    S6-T1 83 100 1 190
    S6-T2 85 100 1 190
     
  3. 57678715

    edb-escm
    Expand Collapse

    文章:
    434
    讚:
    0
    老師請參考以下SQL,首先是歷年總平均分,於f.schyear >= 輸入由哪一學年開始提取數據:
    select
    a.schyear '學年',
    a.classlvl '級別',
    a.classcode '班別',
    a.classno '班號',
    a.enname '英文姓名',
    a.chname '中文姓名',
    f.schyear '歷年學年',
    CASE WHEN f.timeseq='1100' THEN 'T1' WHEN f.timeseq='1200' THEN 'T2' ELSE null END '學期',
    f.syspercscore '總平均分',
    f.omclasslvl '級名次',
    f.omclasslvlbase '級人數'
    from vw_stu_lateststudent a
    left outer join tb_asr_studassessdata f
    on a.suid=f.suid and a.stuid=f.stuid and a.schyear>=f.schyear and (f.timeseq=1100 or f.timeseq=1200)
    where a.schyear=? and a.classlvl =? and f.schyear >=?
    order by a.schyear, a.classlvl, a.classcode, a.classno,f.schyear,f.timeseq

    然後是科目部份,於b.schyear >= 輸入由哪一學年開始提取數據:
    select
    a.schyear '學年',
    a.classlvl '級別',
    a.classcode '班別',
    a.classno '班號',
    a.enname '英文姓名',
    a.chname '中文姓名',
    c.en_des 'Subject',
    c.ch_des '科目',
    b.schyear '歷年學年',
    CASE WHEN b.timeseq='1100' THEN 'T1' WHEN b.timeseq='1200' THEN 'T2' ELSE null END '學期',
    b.sysscore '成績',
    d.fullscore '滿分',
    b.omclasslvl '科目級名次',
    b.omclasslvlbase '科目級人數'
    from vw_stu_lateststudent a
    left outer join tb_asr_subjassessdata b
    on a.suid=b.suid and a.schlvl=b.schlevel and a.schsess=b.schsession and a.classlvl=b.classlevel and a.schyear>=b.schyear and a.stuid=b.stuid and (b.timeseq=1100 or b.timeseq=1200)
    left outer join tb_hse_common c
    on a.suid=c.suid and b.subjcode=c.code_id and c.tb_id='SBJ'
    left outer join tb_asr_clslvlsubjsetting d
    on b.suid=d.suid and b.schlevel=d.schlevel and b.schsession=d.schsession and b.classlevel=d.classlevel and b.schyear=d.schyear and b.timeseq=d.timeseq and b.subjcode=d.subjcode and b.moi=d.moi
    where a.schyear=? and a.classlvl =? and b.schyear >=?
    order by a.schyear, a.classlvl, a.classcode, a.classno,b.subjcode,b.schyear,b.timeseq
     
    #3 edb-escm, 2014-08-26
  4. 10394813

    WEB-STE
    Expand Collapse

    文章:
    91
    讚:
    0
    如果選取某一學生,在校歷年的上、下學期各科成績,可怎樣處理?
    學生姓名:
    STRN:
    REG NO:
    1A上學期 1A下學期.........................................6A上學期 6A下學期
    中文
    英文
    數學
    常識
    音樂
    體育
    視藝
    普通話
     
    #4 WEB-STE, 2014-10-23
  5. 57678715

    edb-escm
    Expand Collapse

    文章:
    434
    讚:
    0
    老師請參考以下SQL:
    select
    a.STRN,
    a.REGNO,
    a.enname '英文姓名',
    a.chname '中文姓名',
    s.schyear '學年',
    ss.ch_des '學制',
    s.classlvl '年級',
    s.classcode '班別',
    s.classno '學號',
    CASE WHEN b.timeseq='1100' THEN 'T1' WHEN b.timeseq='1200' THEN 'T2' ELSE null END '學期',
    c.en_des 'Subject',
    c.ch_des '科目',
    b.SYSSCORE,
    b.SYSGRADECONVCOMPCODE
    from TB_STU_STUDENT a
    left outer join TB_STU_STUSCHREC s
    on a.suid=s.suid and a.stuid=s.stuid
    left outer join tb_asr_subjassessdata b
    on a.suid=b.suid and s.schlvl=b.schlevel and s.schsess=b.schsession and s.classlvl=b.classlevel and a.stuid=b.stuid and (b.timeseq=1100 or b.timeseq=1200)
    left outer join tb_hse_common c
    on a.suid=c.suid and b.subjcode=c.code_id and c.tb_id='SBJ'
    left outer join tb_hse_common ss
    on a.suid=ss.suid and s.schsess=ss.code_id and ss.tb_id='SESSIO'
    where a.STRN=?
    order by b.SUBJCODE,s.schyear,b.timeseq
     
    #5 edb-escm, 2014-10-27
  6. 10394813

    WEB-STE
    Expand Collapse

    文章:
    91
    讚:
    0
    如果想在以下的SQL內修改可以顯示埋這批學生歷年學年,當時就讀的班別及班級,可以怎樣修改?謝謝!

    select
    a.schyear '學年',
    a.classlvl '級別',
    a.classcode '班別',
    a.classno '班號',
    a.enname '英文姓名',
    a.chname '中文姓名',
    f.schyear '歷年學年',
    CASE WHEN f.timeseq='1100' THEN 'T1' WHEN f.timeseq='1200' THEN 'T2' ELSE null END '學期',
    f.syspercscore '總平均分',
    f.omclasslvl '級名次',
    f.omclasslvlbase '級人數'
    from vw_stu_lateststudent a
    left outer join tb_asr_studassessdata f
    on a.suid=f.suid and a.stuid=f.stuid and a.schyear>=f.schyear and (f.timeseq=1100 or f.timeseq=1200)
    where a.schyear=? and a.classlvl =? and f.schyear >=?
    order by a.schyear, a.classlvl, a.classcode, a.classno,f.schyear,f.timeseq
     
    #6 WEB-STE, 2020-03-09
  7. 10394813

    WEB-STE
    Expand Collapse

    文章:
    91
    讚:
    0
    如果想在有關學生的歷年年度,同時顯示出該年度就讀的年級及班別,可以怎樣修改?謝謝!
     
    #7 WEB-STE, 2020-03-09
  8. 57873296

    edb-rn
    Expand Collapse

    文章:
    207
    讚:
    0
    老師,請參考以下,

    有關 第一句SQL ,
    首先是歷年總平均分,於f.schyear >= 輸入由哪一學年開始提取數據:

    select
    a.schyear '學年',
    a.classlvl '級別',
    a.classcode '班別',
    a.classno '班號',
    a.enname '英文姓名',
    a.chname '中文姓名',
    f.schyear '歷年學年',
    g.classlvl '歷年級別',
    g.classcode '歷年班別',

    CASE WHEN f.timeseq='1100' THEN 'T1' WHEN f.timeseq='1200' THEN 'T2' ELSE null END '學期',
    f.syspercscore '總平均分',
    f.omclasslvl '級名次',
    f.omclasslvlbase '級人數'
    from vw_stu_lateststudent a
    left outer join tb_asr_studassessdata f
    on a.suid=f.suid and a.stuid=f.stuid and a.schyear>=f.schyear and (f.timeseq=1100 or f.timeseq=1200)
    left outer join vw_stu_lateststudent g
    on f.suid=g.suid and f.stuid=g.stuid and f.schyear=g.schyear

    where a.schyear=? and a.classlvl =? and f.schyear >=?
    order by a.schyear, a.classlvl, a.classcode, a.classno,f.schyear,f.timeseq
     
  9. 57873296

    edb-rn
    Expand Collapse

    文章:
    207
    讚:
    0
    有關 第二句SQL ,
    然後是 科目部份,於b.schyear >= 輸入由哪一學年開始提取數據:

    select
    a.schyear '學年',
    a.classlvl '級別',
    a.classcode '班別',
    a.classno '班號',
    a.enname '英文姓名',
    a.chname '中文姓名',
    c.en_des 'Subject',
    c.ch_des '科目',
    b.schyear '歷年學年',
    e.classlvl '歷年級別',
    e.classcode '歷年班別',

    CASE WHEN b.timeseq='1100' THEN 'T1' WHEN b.timeseq='1200' THEN 'T2' ELSE null END '學期',
    b.sysscore '成績',
    d.fullscore '滿分',
    b.omclasslvl '科目級名次',
    b.omclasslvlbase '科目級人數'
    from vw_stu_lateststudent a
    left outer join tb_asr_subjassessdata b
    on a.suid=b.suid and a.schlvl=b.schlevel and a.schsess=b.schsession and a.schyear>=b.schyear and a.stuid=b.stuid and (b.timeseq=1100 or b.timeseq=1200)
    left outer join tb_hse_common c
    on a.suid=c.suid and b.subjcode=c.code_id and c.tb_id='SBJ'
    left outer join tb_asr_clslvlsubjsetting d
    on b.suid=d.suid and b.schlevel=d.schlevel and b.schsession=d.schsession and b.classlevel=d.classlevel and b.schyear=d.schyear and b.timeseq=d.timeseq and b.subjcode=d.subjcode and b.moi=d.moi
    left outer join vw_stu_lateststudent e
    on b.suid=e.suid and b.schyear=e.schyear and b.stuid=e.stuid

    where a.schyear=? and a.classlvl =? and b.schyear >=?
    order by a.schyear, a.classlvl, a.classcode, a.classno,b.subjcode,b.schyear,b.timeseq
     
  10. 10394813

    WEB-STE
    Expand Collapse

    文章:
    91
    讚:
    0
    謝謝!可否把以上2個合而為1,一次顯示各科的成績及平均分?
     
    #10 WEB-STE, 2020-03-11
  11. 57873296

    edb-rn
    Expand Collapse

    文章:
    207
    讚:
    0
    如果要把以上2個SQL 合而為1,當中涉及繁複的修改,
    如有進一步查詢,請老師聯絡所屬的網上校管系統小組的學校聯絡主任。謝謝!