首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

MySQL 資料庫設計入門:人事管理系統核心表結構

     編輯:程式設計綜合問答

首次設計資料庫,需支援:單位/職位/人員、在崗狀態、崗位級別、Excel 匯入、調入/調出/新進/註銷、統計各單位領導數/級別人數/缺編。

核心實體識別

  • 單位:`unit(id, name, parent_id)` 自關聯樹。
  • 職位:`post(id, name, level, unit_id)` 級別對應統計。
  • 人員:`person(id, unit_id, post_id, name, status, join_date, leave_date, transfer_to_unit_id)` 狀態:在崗/調出/離職/註銷。
  • 調動記錄:`transfer_log(person_id, from_unit, to_unit, date, type)`。

統計查詢思路

  • 領導數:`SELECT unit_id, COUNT(*) FROM person WHERE post_id IN (SELECT id FROM post WHERE level <= 3) AND status='在崗' GROUP BY unit_id;`
  • 級別人數:`JOIN post GROUP BY level;`
  • 缺編:編制表 `post_quota(unit_id, post_id, quota)` LEFT JOIN 實際人數。

建議

先畫 ER 圖,確認實體與關聯(1:N、N:M),再建表;用工具(MySQL Workbench、PowerDesigner)正向生成 DDL。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved