SQL Server có một thứ gọi là "thống kê nhiều cột", nhưng đó không phải là điều người ta nghĩ nó có nghĩa.
Chúng ta hãy xem bảng mẫu sau:
CREATE TABLE BadStatistics
(
IsArchived BIT NOT NULL,
Id INT NOT NULL IDENTITY PRIMARY KEY,
Mystery VARCHAR(200) NOT NULL
);
CREATE NONCLUSTERED INDEX BadIndex
ON BadStatistics (IsArchived, Mystery);
Cùng với đó, hai số liệu thống kê đang được tạo trên hai chỉ mục chúng ta có:
Số liệu thống kê cho Bad Index:
+--------------+----------------+-------------------------+
| All density | Average Length | Columns |
+--------------+----------------+-------------------------+
| 0.5 | 1 | IsArchived |
+--------------+----------------+-------------------------+
| 4.149378E-06 | 37 | IsArchived, Mystery |
+--------------+----------------+-------------------------+
| 4.149378E-06 | 41 | IsArchived, Mystery, Id |
+--------------+----------------+-------------------------+
+--------------+------------+---------+---------------------+----------------+
| RANGE_HI_KEY | RANGE_ROWS | EQ_ROWS | DISTINCT_RANGE_ROWS | AVG_RANGE_ROWS |
+--------------+------------+---------+---------------------+----------------+
| 0 | 0 | 24398 | 0 | 1 |
+--------------+------------+---------+---------------------+----------------+
| 1 | 0 | 216602 | 0 | 1 |
+--------------+------------+---------+---------------------+----------------+
Số liệu thống kê cho chỉ số cụm:
+--------------+----------------+---------+
| All density | Average Length | Columns |
+--------------+----------------+---------+
| 4.149378E-06 | 4 | Id |
+--------------+----------------+---------+
+--------------+------------+---------+---------------------+----------------+
| RANGE_HI_KEY | RANGE_ROWS | EQ_ROWS | DISTINCT_RANGE_ROWS | AVG_RANGE_ROWS |
+--------------+------------+---------+---------------------+----------------+
| 1 | 0 | 1 | 0 | 1 |
+--------------+------------+---------+---------------------+----------------+
| 240999 | 240997 | 1 | 240997 | 1 |
+--------------+------------+---------+---------------------+----------------+
| 241000 | 0 | 1 | 0 | 1 |
+--------------+------------+---------+---------------------+----------------+
(Tôi đã điền vào bảng với dữ liệu mẫu ngẫu nhiên trong đó khoảng một phần mười hàng không được lưu trữ. Tôi đã chạy cập nhật thống kê quét đầy đủ sau đó.)
Tại sao biểu đồ của số liệu thống kê hai cột chỉ sử dụng một cột? Tôi biết rằng nhiều người đã viết về điều đó nó làm , nhưng lý do là gì? Trong trường hợp này, nó làm cho toàn bộ biểu đồ ít hữu ích hơn nhiều, bởi vì cột đầu tiên chỉ có hai giá trị. Tại sao số liệu thống kê sẽ bị hạn chế tùy tiện như vậy?
Xin lưu ý rằng câu hỏi này không đề cập đến biểu đồ đa chiều, là một con thú hoàn toàn khác. Đó là về biểu đồ một chiều với một chiều là các bộ dữ liệu chứa nhiều cột tương ứng.