Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comparaison Sql Server int vs nvarchar sur les performances?

INT sera plus rapide - voici pourquoi :

  • SQL Server organise ses données et son index en pages de 8K
  • si vous avez une page d'index avec une clé INT, vous obtenez environ 2 000 entrées INT
  • si vous avez NVARCHAR(128) et que vous utilisez en moyenne 20 caractères, cela représente 40 octets par entrée, soit environ 200 entrées par page

Ainsi, pour le même nombre d'entrées d'index, le cas NVARCHAR(128) utiliserait dix fois plus de pages d'index.

Le chargement et la recherche de ces pages d'index entraîneront beaucoup plus d'opérations d'E/S.

Donc pour faire court :si vous le pouvez, utilisez toujours INT .