Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

So sánh int Sql Server vs nvarchar về hiệu suất?

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.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách kiểm tra phiên bản máy chủ SQL của bạn

  2. SQL Server CHỌN vào bảng hiện có

  3. @@ LỖI và / hoặc THỬ - CATCH

  4. 6 cách để kiểm tra xem một bảng có tồn tại trong SQL Server hay không (ví dụ T-SQL)

  5. 7 cách trả lại tất cả các bảng bằng khóa chính trong SQL Server