sql >> Databasteknik >  >> RDS >> Sqlserver

Sql Server int vs nvarchar jämförelse på prestanda?

INT kommer att bli snabbare - det är därför:

  • SQL Server organiserar sina data och indexerar till sidor på 8K
  • om du har en indexsida med INT-nyckel på får du ungefär 2 000 INT-poster
  • om du har NVARCHAR(128) och du använder i genomsnitt 20 tecken, är det 40 byte per post, eller ungefär 200 poster per sida

Så för samma antal indexposter skulle NVARCHAR(128)-fallet använda tio gånger så många indexsidor.

Att ladda och söka på dessa indexsidor kommer att medföra betydligt fler I/O-operationer.

Så för att göra saker kort:om du kan, använd alltid INT .



  1. Vilken är den perfekta verktygslådan för PL/SQL-utveckling?

  2. Hur man ställer in MariaDB (Master-Slave) replikering i CentOS/RHEL 7 och Debian 8/9

  3. listview visa data från databasen i Android

  4. vad som händer i cutover-fasen av adop i R12.2