To answer your question:
1) Some users are not assigned to any departments
2) Some users are assigned to a Department but not a sub department
3) Some users are assigned to a Department that has no sub departments.
4) Sub Departments can be assigned to a Department before a user is assigned to it.
Now, because I'm no expert, I came up with, I *think* a better way of doing this whole thing.
Check out this table idea I have. What if I just simplified the Departments table to include actual sub-departments and add a Parent_Dept_ID instead?
Table: Users
User_ID User_First_Name
1 Bob
2 Jane
3 Alex
Table: Departments
Dept_ID Dept_Name Parent_Dept_ID
8 Music Null
9 Business Null
10 History Null
11 Muscian 8
12 Choir 8
13 Chorale 8
14 Accounting 9
Table: User_Depts
User_ID Dept_ID
1 8
1 10
1 13
3 9
3 14
Now you can see that Bob is a part of Department Music, and "Sub Department" Chorale which is under the Music Department. He is also a part of the History Department which has no sub departments.
Alex is a part of the Business Department and the Accounting sub department.
I think this table will actually suite my needs better and would be easier to manage with mySQL, don't you think?