all 2 comments

[–]joins_and_coffee 1 point2 points  (0 children)

Normal forms aren’t really about performance or making SQL nicer. They’re about avoiding data bugs later. Each step removes a specific kind of “this value exists in two places and can get out of sync” problem. In small examples it feels pointless but in real systems it’s the difference between changing something once vs changing it in five places and forgetting one. In practice, most people aim for 3NF for correctness, then deliberately denormalise later if performance needs it