I'm designing a database for name statistics (how many people where given that name). The data consists of names, and numbers for how many men and women were given that name within a time period (primarily 15 year time periods, but this varies). The data is rather simple, but I still keep getting stuck with the schema.
So here are the two (very similar) options I am considering:
1) Just one large table.
(Name, CountMen, CountWomen, Timeperiod)
Time period would probably be split to start and end columns for easier querying. As per primary key, I could either have autoincremented ID or just use combination of name and start of the time period.
2) I'll have names in a separate table (where they'll be primary keys) and the other table will contain the actual statistics (and thus look like the table in number 1). I've read that having a single-column table is not particularly bad design but I don't know if it makes any sense either or rather adds any value.
The options I have ruled out are:
1) Having a column for each time period because then I would eventually have to update the schema. This just seems like terrible design.
2) Having separate tables for each time period. Because time periods aren't that short, I wouldn't end up with that many
So how would all recommend I approach this? Is there an approach I have not considered? I know it's a simple thing and I should probably just stop overthinking and pick one approach. Still, I'd like a second opinion first because I'm quite new to database stuff.