Note: this section is a little long-winded, so feel free to just read the bolded summary below.
For example, take the schema below. Could the 2 "Statistic" tables at the bottom be normalized further?
My initial reaction is to feel that it could be normalized further (having a Statistics table for each and every sport could result in a lot of tables), but if I were to do that, then what mechanism would enforce the requirements for each respective sport's statistics?
For example, a Baseball statistic MUST include values for TotalHits and TotalHomeRuns. If I keep the BaseballStatistic table the way it is, then I can set these columns to Not Null.
Thoughts? Maybe there is even a better way than this current schema.
My basic problem is that I need to associate different types (BaseballStatistic and FootballStatistic) to the same parent type (Game). Is there any way to do this other than what I have done here?
If it matters, I am using SQL Server.