Câu trả lời của Daniel tập trung vào chi phí đọc từng hàng riêng lẻ. Trong ngữ cảnh này: Đặt NOT NULL
các cột có kích thước cố định đầu tiên trong bảng của bạn sẽ giúp một chút. Đặt các cột có liên quan trước (những cột bạn truy vấn) sẽ giúp một chút. Giảm thiểu phần đệm (do căn chỉnh dữ liệu) bằng cách chơi tetris căn chỉnh với các cột của bạn có thể giúp một chút. Nhưng hiệu ứng quan trọng nhất chưa được đề cập, đặc biệt là đối với các bảng lớn.
Các cột bổ sung rõ ràng làm cho một hàng chiếm nhiều không gian đĩa hơn, do đó, ít hàng hơn phù hợp trên một trang dữ liệu (theo mặc định 8 kB). Các hàng riêng lẻ được trải ra trên nhiều trang hơn. Công cụ cơ sở dữ liệu thường phải tìm nạp toàn bộ trang, không phải các hàng riêng lẻ . Nó ít quan trọng cho dù các hàng riêng lẻ có phần nhỏ hơn hoặc lớn hơn - miễn là cùng một số trang phải được đọc.
Nếu một truy vấn tìm nạp một phần nhỏ (tương đối) của một bảng lớn, trong đó các hàng được trải ra ít nhiều ngẫu nhiên trên toàn bộ bảng, được hỗ trợ bởi một chỉ mục, điều này sẽ dẫn đến số lần đọc trang tương tự, mà ít quan tâm đến cỡ hàng. Các cột không liên quan sẽ không làm bạn chậm lại nhiều trong trường hợp (hiếm) như vậy.
Thông thường, bạn sẽ tìm nạp các bản vá hoặc cụm hàng đã được nhập theo thứ tự hoặc gần và chia sẻ các trang dữ liệu. Những hàng đó được trải ra do sự lộn xộn, nhiều trang đĩa phải được đọc để đáp ứng truy vấn của bạn. Phải đọc nhiều trang thường là lý do quan trọng nhất khiến truy vấn bị chậm hơn. Và đó là yếu tố quan trọng nhất tại sao các cột không liên quan làm cho các truy vấn của bạn chậm hơn.
Với các cơ sở dữ liệu lớn, thường không đủ RAM để giữ tất cả trong bộ nhớ cache. Các hàng lớn hơn chiếm nhiều bộ đệm hơn, nhiều tranh chấp hơn, ít lần truy cập bộ đệm hơn, nhiều I / O đĩa hơn. Và đĩa đọc thường nhiều tốn kém hơn. Ít hơn với SSD, nhưng sự khác biệt đáng kể vẫn còn. Điều này thêm vào điểm trên về đọc trang.
Nó có thể hoặc không quan trọng nếu các cột không liên quan là TOAST-ed. Các cột có liên quan cũng có thể là TOAST-ed, mang lại nhiều hiệu ứng tương tự.