sco08y, that's an interesting query
the result set will surely contain a whacking great number of NULLs, right? and the application is going to have to examine the m.* fields and detect when they are NULL to conclude that the person isn't a musician, and then examine the e.* fields and detect when they are NULL to conclude that the person isn't an employee, etc.
so, what is the difference between the application processing that query's result set, compared with the application processing a single table which includes all the necessary columns, many of which will be NULL?
well, fewer columns in the result set, for starters
anyhow, i tend to implement the supertype/subtype structure as a single table
i have yet to find a scenario where i ~need~ to split the subtypes off into separate tables