INT sarà più veloce - ecco perché:
- SQL Server organizza i suoi dati e l'indice in pagine di 8K
- se hai una pagina indice con la chiave INT, ottieni circa 2'000 voci INT
- se hai NVARCHAR(128) e utilizzi in media 20 caratteri, sono 40 byte per voce o circa 200 voci per pagina
Quindi, per la stessa quantità di voci di indice, il caso NVARCHAR(128) utilizzerebbe dieci volte più pagine di indice.
Il caricamento e la ricerca di queste pagine di indice comporteranno molte più operazioni di I/O.
Quindi, per farla breve:se puoi, usa sempre INT .