Table design

B

Ben

Hi all -

I have a list of employees and I wanted to know if you can share with me how
best to design the table so that it implicitly reflects the hierarchy.

The list of employees contains employees from multiple division.
1.Each division has a division head
2.Below the division head, is a department head, there can be multiple
departments within each division.
3.Within each department, there can be multiple groups.
4.Each group have its own manager
5.Below each group are the individual employees belonging to each of the
groups.

I would like to design a table that would reflect this hierarchy:

.........................Corportate Division head
........................./ \
......................../ \
......................./ \
..................Division Head1 Division Head2
................./ | \ / \
............... / | \ / \
............Dept1 Dept2 Dept3 Dept1 Dept2
.........../ | \ | / | \ / \ / \
........../ | \ | / | \ / \ / \
.......Grp1 Grp2 Grp3 Grp1 Grp1 Grp2 Grp3 Grp1 Grp2 Grp1 Grp2


The Grp numbers in each department are not related to the same Grp number in
other Departments..

Thanks for sharing your thoughts,

Ben

--
 
S

Steve

TblEmployee
EmployeeID
FirstName
MI
LastName
<etc>

TblPosition
PositionID
Position

Where Position can be:
Corporate Division Head
Division Head
Department Manager
Employee

TblCorp
CorpID
Corpname
<other needed corp fields>

TblDivision
DivisionID
CorpID
Division

TblDept
DeptID
DivisionID
Division

TblGroup
GroupID
DeptID
Group

TblGroupEmployee
GroupEmployeeID
EmployeeID
GroupID
PositionID

By associating every employee of the corporation with a group, defines the
employee belonging to the corporation, a specific division, a specific
department and a specific group. By specifying each employee's position, you
define whether he is just a member of a group (employee), a department
manager, division head or the boss of the whole shebang.

Steve
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top