Triệu chứng
Giả định rằng bạn đang chạy một truy vấn liên quan đến tham gia hoặc kết hợp trên một cột được bao phủ bởi cả cột đơn và nhiều cột thống kê (trong đó cột này không phải là cột hàng đầu). Nếu bạn đang sử dụng công cụ ước tính hợp lý mặc định (CE) trong SQL Server 2016, có thể số lượng thấp các hàng riêng biệt. Điều này sẽ dẫn đến kế hoạch thực thi truy vấn phụ (ví dụ: ước tính thấp có thể gây ra không đủ bộ nhớ cho một toán tử Hash, gây ra truy vấn để tràn vào tempdb).
Trạng thái
Microsoft đã xác nhận đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".
Giải pháp
Sự cố này đã được khắc phục trong bản Cập Nhật tích lũy sau đây cho SQL Server:
Lưu ý Để khắc phục sự cố này có hiệu lực, bạn phải bật bản sửa lỗi tối ưu hóa truy vấn bằng dấu theo dõi (TF) 4199 hoặc tùy chọn cấu hình cơ sở dữ liệu tương ứng hoặc tùy chọn gợi ý truy vấn.
Giới thiệu về Cập Nhật tích lũy cho SQL Server:
Mỗi bản Cập Nhật tích lũy mới cho SQL Server chứa tất cả các hotfix và tất cả các bản sửa lỗi bảo mật đã được đưa vào bản Cập Nhật tích lũy trước đó. Kiểm tra các bản Cập Nhật tích lũy mới nhất cho SQL Server:
Cách giải quyết
Sự cố này có thể được khắc phục bằng cách thêm các gợi ý truy vấn sau đây:
SỬ dụng GỢI Ý (' FORCE_LEGACY_CARDINALITY_ESTIMATION ')
Tham khảo
Tìm hiểu về thuật ngữ mà Microsoft sử dụng để mô tả các bản cập nhật phần mềm.