The size of the fields, the frequency and type of use (selection, updates, etc.) and the size of the tables (rows) are all in addition to the way you index it.
In general, this is a good design if a subset of the data in one table is very often viewed (say, in a list), and the second subset is viewed / edited much less often and / or contains very large fields (for example, varchar (Maximum)).
However, if the data is always viewed together, this is probably not the way to go. Therefore, if you need to read these settings in the second table each time you read the first table, do not follow this road.
Update. Given your index and the fact that almost all settings are of a fixed size (bit), I would just make it one table. If you need a subset query without an entire table, you can consider the coverage index instead of splitting the table.
Russell Steen
source share