Du gør en god pointe, at du kan undgå et vist antal forenede forespørgsler ved at bruge det, der kaldes en naturlig nøgle i stedet for en surrogatnøgle . Det er kun dig, der kan vurdere, om fordelen ved dette er væsentlig i din ansøgning.
Det vil sige, at du kan måle de forespørgsler i din applikation, der er de vigtigste for at være hurtige, fordi de arbejder med store mængder data, eller de udføres meget ofte. Hvis disse forespørgsler har gavn af at eliminere en joinforbindelse og ikke lider ved at bruge en varchar-primærnøgle, så gør det.
Brug ikke nogen af strategierne for alle tabeller i din database. Det er sandsynligt, at i nogle tilfælde er en naturlig nøgle bedre, men i andre tilfælde er en surrogatnøgle bedre.
Andre gør en god pointe, at det i praksis er sjældent, at en naturlig nøgle aldrig ændrer sig eller har dubletter, så surrogatnøgler er normalt umagen værd.