INT sẽ nhanh hơn - đây là lý do:
- SQL Server tổ chức dữ liệu và lập chỉ mục của nó thành các trang 8K
- nếu bạn có một trang chỉ mục với khóa INT trên đó, bạn sẽ nhận được khoảng 2.000 mục nhập INT
- nếu bạn có NVARCHAR (128) và bạn sử dụng trung bình 20 ký tự, tức là 40 byte cho mỗi mục nhập hoặc khoảng 200 mục trên mỗi trang
Vì vậy, đối với cùng một lượng mục nhập chỉ mục, trường hợp NVARCHAR (128) sẽ sử dụng số lượng trang chỉ mục gấp mười lần.
Việc tải và tìm kiếm các trang chỉ mục đó sẽ phát sinh nhiều hoạt động I / O hơn đáng kể.
Vì vậy, để làm cho mọi thứ ngắn gọn:nếu bạn có thể, hãy luôn sử dụng INT.