Если вы возьмете все D в отношении данного A, я бы его нормализовал.
Но если вы хотите конкретное подмножество таких D и его легко узнать, которое заранее, но позже отнимает много времени (например,... если вы хотите, чтобы все D из новейшего C приходились на самый новый B), я бы предпочел хранить этот ярлык где-нибудь.
Он не обязательно должен быть в самом D (особенно, если вы не хотите, чтобы все D были связаны сA).
Если вы хотите сделать это, чтобы ваши запросы было легче читать и писать, тогда рассмотрите представление.
Если вы хотите сделать это, чтобы повысить производительность, попробуйте все и измерьте это,(И я не специалист по настройке производительности SQL, поэтому у меня нет конкретных советов, кроме этого)