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

Tại sao các thống kê SQL Server này đã lỗi thời khi nó được đặt thành tự động cập nhật?

Mặc dù bạn đặt số liệu thống kê Tự động cập nhật thành true, chúng sẽ chỉ cập nhật khi đạt đến ngưỡng..điều này khác nhau đối với các phiên bản khác nhau

Ngưỡng dành cho SQL Server 2012 trở lên:

  1. Kích thước bảng đã tăng từ 0 thành> 0 hàng

  2. Số lượng hàng trong bảng khi thống kê được thu thập là 500 hoặc ít hơn và cột điều chỉnh của cột đầu tiên của đối tượng thống kê đã thay đổi hơn 500 kể từ đó

  3. Bảng có hơn 500 hàng khi thu thập thống kê và cột của cột đầu tiên của đối tượng thống kê đã thay đổi hơn 500 + 20% số hàng trong bảng khi thống kê được thu thập

Đối với SQLServer 2016, có một số thay đổi lớn và thống kê Cập nhật SQL với thuật toán mới (đọc thường xuyên hơn các phiên bản cũ)

Thông thường mọi người lên lịch công việc bảo trì vào cuối tuần và điều này bao gồm xây dựng lại chỉ mục / cập nhật số liệu thống kê ..

Điều này thường phải xử lý đối với hầu hết các cơ sở dữ liệu. Trong trường hợp của bạn, nếu bạn thấy các vấn đề về hiệu suất do số liệu thống kê không hợp lệ, bạn có thể cập nhật chúng theo cách thủ công. Chúng tôi thực hiện mỗi tuần một lần, nhưng các trang web như StackOverflow làm điều đó thường xuyên hơn

update stats tablename

Đọc thêm / tài liệu tham khảo:
Thống kê được Trình tối ưu hóa Truy vấn sử dụng trong Microsoft SQL Server 2008
Hiểu khi nào thống kê sẽ tự động cập nhật




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server:chọn các hàng mới nhất có tổng khớp với một giá trị

  2. So sánh giá trị của 2 bảng và liệt kê các hàng khác nhau

  3. Bộ lọc tham số Nhiều giá trị SSRS dựa trên tập dữ liệu

  4. Làm thế nào để chuyển đổi varchar thành date chỉ khi nó chứa một ngày hợp lệ?

  5. Làm cách nào để chọn giá trị của thuộc tính xsi:type trong SQL Server?