So, if you can imagine a person was simultaneously enrolled in 100 different courses and had just received final grades for all courses, would it be better practice to store that information like so (wide columns):
| personID | Math | Science | English |
|---|---|---|---|
| 1 | 90 | 88 | 98 |
| 2 | 91 | 98 | 90 |
(and ...97 other columns)
Or like this:
| personID | Grade | Subject |
|---|---|---|
| 1 | 90 | Math |
| 1 | 88 | Science |
| 1 | 98 | English |
This brings the columns down significantly (from 100 to 3).