I will pick the Eldritch Knight as example:
Level 3 : Unlocks the subclass, picks 2 Cantrips, 2 Evocation (or Abjuration) level 1 spells, and 1 wizard spell of any wizard school.
Level 4 : Can pick another Evo level 1 spell, can trade any spell for another spell
The problem is that I cannot trade the new spell I pick on level 4 for any other spell, but have to pick a spell I already know.
So in order to get to the spell list I want, I actually have to pick a spell I DONT actually want on level 3, just so I can trade it for the spell I want on level 4.
---
Lets give a dumb example:
Level 3
1: Shield, Magic Missile, Enhanced Leap
Level 4
1: Shield, Chromatic Orb, Enhance Leap, Featherfall (had to trade away Magic Missile to get Featherfall)
---
All I can do on level 4 to keep Magic Missile is to go to Withers, respec, and this time get Chromatic Orb on Level 3 so I can take Magic Missile, the spell I *actually* want, on Level 4, just so I can have the spell list I actually want on level 4.
This problem could be easily solved if BG3 would offer the new spell you pick on Level 4 as possible trade for the new spell, too, but it just doesnt. You have to trade away something you had before, even if you really would rather keep all these spells, which is usually the case.
The same odd problem of course also occurs on Arcane Trickster, and also occurs again for example also on Level 7, with the added problem that the new spell has to be level 1 though the EK just unlocked level 2 (according to the Wiki, anyway, I havent actually checked that), a problem that doesnt occur for Arcane Trickster (again according to the Wiki).