When we make items there are always 2 tables. Definition (per item type, holds name and stats) and data (per player, holds ownership, slot, status, quantity). Obvious and simple.
I have a similar thing called "office" (given to players by the team leader). But each player can have only up to 3 offices max, and average will be like 1-2 per player (so much fewer than items). It would be also much more frequently queried for name compared to items, since all players want to know what offices you hold (as opposed to items that are usually private).
So, should I make traditional 2 separate tables or just dump it all in 1 and save joins, make it simplier and save one table query?