• You can create views to "merge" two tables but they get tricky when you try to update columns from both tables.

    You could create a wide table (sparse) containing all the sub-types as nullable columns and implement views on it to give you your subset that you can update.