寫作業(yè)的思考。假如有這么一個簽到系統(tǒng)
按照范式設(shè)計有
學(xué)院表
課表(學(xué)院課表一對多)
老師表
學(xué)生表
教課表(老師課表多對多)
上課表(學(xué)生課表多對多)
排課表(課表排課一對多)
簽到表(排課簽到一對多)
簽到記錄表(簽到,簽到記錄一對多)
假如設(shè)定兩個查詢
學(xué)生由學(xué)號和課號查詢簽到
教師由教工號和課號查詢
而在我實現(xiàn)這個系統(tǒng)時,隨便一個查詢動作都建立了好多張表,為了獲取排課,課程,老師,學(xué)院信息。
我覺得這樣做,,有點麻煩?可是把它放到代碼實現(xiàn)也要不斷發(fā)起查詢很多次呀。。
比如這是我剛剛寫的,,一個獲取這個學(xué)生本周需要簽到的課程,我想看看瞎幾把寫可以聯(lián)立成什么樣子,。功能的目的我達(dá)到了
SELECT
att.user_usr_id, att.course_coz_id,
sch.sch_id, sch.sch_year, sch.sch_term, sch.sch_start_week, sch.sch_end_week,
sch.sch_fortnight, sch.sch_day, sch.sch_start_time, sch.sch_end_time, sch.course_coz_id, sch.location_loc_id,
loc.loc_id, loc.loc_name,
coz.coz_id, coz.coz_name, coz.coz_size, coz.coz_act_size, coz.coz_att_rate,
tea.user_usr_id tea_user_usr_id, tea.course_coz_id,
tch.usr_name tea_user_usr_name,
coz_sch.sch_id coz_sch_id, coz_sch.sch_year coz_sch_year, coz_sch.sch_term coz_sch_term,
coz_sch.sch_start_week coz_sch_start_week, coz_sch.sch_end_week coz_sch_end_week, coz_sch.sch_fortnight
coz_sch_fortnight,
coz_sch.sch_day coz_sch_day, coz_sch.sch_start_time coz_sch_start_time, coz_sch.sch_end_time coz_sch_end_time,
coz_sch.course_coz_id coz_sch_course_coz_id, coz_sch.location_loc_id,
coz_sch_loc.loc_id coz_sch_loc_id, coz_sch_loc.loc_name coz_sch_loc_name,
si_id, si_week, si_time, si_auto,
sir_id, sir_time, sir_leave, sir_approve, sir_voucher, sir.sign_in_${curYear}_${curTerm}_si_id sir_id,
sir.user_usr_id sir_user_usr_id
FROM attendance att
JOIN schedule sch ON att.course_coz_id = sch.course_coz_id
LEFT OUTER JOIN location loc ON loc.loc_id = sch.location_loc_id
<!-- sch coz -->
JOIN course coz ON sch.course_coz_id = coz.coz_id
LEFT OUTER JOIN teaching tea ON coz.coz_id = tea.course_coz_id
LEFT OUTER JOIN schedule coz_sch ON coz.coz_id = coz_sch.course_coz_id
LEFT OUTER JOIN location coz_sch_loc ON coz_sch.location_loc_id = coz_sch_loc.loc_id
JOIN user tch ON tea.user_usr_id = tch.usr_id
<!-- history sign in -->
JOIN sign_in_${curYear}_${curTerm} si ON sch.sch_id = si.schedule_sch_id
LEFT OUTER JOIN sign_in_rec_${curYear}_${curTerm} sir ON
si.si_id = sir.sign_in_${curYear}_${curTerm}_si_id AND
att.user_usr_id = sir.user_usr_id
<where>
sir.sir_id IS NULL <!-- 還沒簽到de -->
AND att.user_usr_id = #{usrId} <!-- 用戶id -->
</where>
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
北大青鳥中博軟件學(xué)院創(chuàng)立于2003年,作為華東區(qū)著名互聯(lián)網(wǎng)學(xué)院和江蘇省首批服務(wù)外包人才培訓(xùn)基地,中博成功培育了近30000名軟件工程師走向高薪崗位,合作企業(yè)超4
中公教育集團創(chuàng)建于1999年,經(jīng)過二十年潛心發(fā)展,已由一家北大畢業(yè)生自主創(chuàng)業(yè)的信息技術(shù)與教育服務(wù)機構(gòu),發(fā)展為教育服務(wù)業(yè)的綜合性企業(yè)集團,成為集合面授教學(xué)培訓(xùn)、網(wǎng)
達(dá)內(nèi)教育集團成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。