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

char so với varchar cho hiệu suất trong cơ sở dữ liệu chứng khoán

Trong MyISAM, có một số lợi ích khi tạo các bản ghi có chiều rộng cố định. VARCHAR là chiều rộng thay đổi. CHAR là chiều rộng cố định. Nếu các hàng của bạn chỉ có các kiểu dữ liệu có chiều rộng cố định, thì toàn bộ hàng có chiều rộng cố định và MySQL có được một số lợi thế khi tính toán các yêu cầu về không gian và độ lệch của các hàng trong bảng đó. Điều đó nói rằng, lợi thế có thể là nhỏ và khó có thể có được một khoản lợi nhỏ có thể vượt qua các chi phí khác (chẳng hạn như hiệu quả bộ nhớ cache) từ việc có các cột CHAR có độ rộng cố định, nơi VARCHAR sẽ lưu trữ nhỏ gọn hơn.

Điểm ngắt mà nó trở nên hiệu quả hơn tùy thuộc vào ứng dụng của bạn và đây không phải là điều có thể trả lời được ngoại trừ việc bạn thử nghiệm cả hai giải pháp và sử dụng giải pháp phù hợp nhất với dữ liệu của bạn theo cách sử dụng ứng dụng của bạn.

Về INT (7) so với INT (11), điều này không liên quan đến lưu trữ hoặc hiệu suất. Có một sự hiểu lầm phổ biến rằng đối số của MySQL đối với kiểu INT có liên quan gì đến kích thước của dữ liệu - nó không. Kiểu dữ liệu INT của MySQL luôn là 32 bit. Đối số trong ngoặc đơn đề cập đến số lượng chữ số cần đệm nếu bạn hiển thị giá trị bằng ZEROFILL. Ví dụ. INT (7) sẽ hiển thị 0001234 trong đó INT (11) sẽ hiển thị 00000001234. Nhưng phần đệm này chỉ xảy ra khi giá trị được hiển thị, không xảy ra trong quá trình lưu trữ hoặc tính toán toán học.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:Tại sao ID thứ 5 trong mệnh đề IN lại thay đổi mạnh mẽ kế hoạch truy vấn?

  2. Tối ưu hóa truy vấn django để kéo khóa ngoại và mối quan hệ django-taggit

  3. cách chuyển đổi nhiều lớp json lồng nhau sang bảng sql

  4. Chọn các giá trị hàng động làm tên cột, theo thứ tự cụ thể

  5. Lặp lại một Truy vấn chèn trong PHP