So i am working a project which have up to 3 different user types, there are about 30 fields which are exactly the same between all 3 users, then an additional 20 fields belonging to only 2 of the 3 user types(admin and player). And finally there are another 11 fields specific to only the one user type.(player)
All 3 user type have different uses in the system. One is a admin, one a user and the another a palyer in the system.
Each user's role in the application is different. And each user will hook up to different tables dependent on their type.
My question is thus, should I duplicate the table structures into separate tables for each user and then extend each table separately or should I keep a general user table and extend all user type from that table with nullable foreign keys, determining the joining table by the user type.