sql / mysql中的更多列或更多表

I'm working with many datasets, for example i have a main table with id, and 30 more tables They are relating to main with id, but I have just given me that I have columns specific for each type of event in main table, then for example the main table

id  event_type  data1     data2   data3     data4   data5   ……..    data15
1   primary     x          x      null      null    x               null
2   primary     x          x      null      null    x               null
3   secundary   x         null     x        x       null            null
4   secundary   x         null     x        x       null            null
5   primary-1   x          x       x        x       x               null

Then for example, data2 is exclusive to secundary, data3 no have info in primary...etc.

so my question is, what would be the best way of working, create a table, for each type of event, and then link it to event_type, or put all the columns in a single primary table,

** note

if i do the first option, i need to work with leftjoin, becouse i have other 30 tables linked to id, and i working with leftjoin, and anyway there will be null for any columns.

my question is for the best optimization, I want faster processing in less time