Cảnh báo trong kế hoạch truy vấn Giới tính Cardinality Ước tính


17
create table T(ID int identity primary key)
insert into T default values
insert into T default values

go

select cast(ID as varchar(10)) as ID
from T
where ID = 1

Các truy vấn ở trên có một cảnh báo trong kế hoạch truy vấn.

<Warnings>
  <PlanAffectingConvert ConvertIssue="Cardinality Estimate" Expression="CONVERT(varchar(10),[xx].[dbo].[T].[ID],0)" />
</Warnings>

Tại sao nó có cảnh báo?

Làm thế nào một diễn viên trong danh sách trường có thể ảnh hưởng đến ước tính cardinality?

Câu trả lời:


12

Cảnh báo này là mới đối với SQL Server 2012.

Từ cảnh báo "Chuyển đổi loại trong biểu thức ....." mới trong SQL2012, đến việc sử dụng thực tế

Tôi hiểu ý bạn là gì. Mặc dù tôi đồng ý rằng đây là tiếng ồn trong hầu hết các trường hợp, nhưng chúng tôi ưu tiên thấp để khắc phục. Chúng tôi sẽ xem xét nó nếu chúng tôi nhận được nhiều phản hồi. Bây giờ tôi đã đóng cái này theo thiết kế.

Kết nối đã bị giết và có vẻ như vấn đề ban đầu đã được chuyển sang UserVoice. Đây là một vấn đề UserVoice khác về cùng một vấn đề, Chuyển đổi loại trong có thể ảnh hưởng đến CardinalityEstimate - Chuyển đổi / truyền trên các cột được chọn

Tôi sẽ cung cấp câu trả lời nhàm chán cho đến khi ai đó đi cùng với một câu trả lời tốt hơn.

Tại sao nó có cảnh báo?

Đầu cơ về phía tôi.
Có một diễn viên trên một cột được sử dụng trong mệnh đề where làm cho số liệu thống kê của cột đó trở nên thú vị. Thay đổi kiểu dữ liệu làm cho số liệu thống kê không tốt, vì vậy hãy cảnh báo về điều đó trong trường hợp giá trị từ danh sách trường có thể sẽ được sử dụng ở đâu đó.

Làm thế nào một diễn viên trong danh sách trường có thể ảnh hưởng đến ước tính cardinality?

Không thể trừ khi đó là danh sách trường trong bảng dẫn xuất.


Tôi sẽ nối phần sau vào câu cuối cùng hoặc truy vấn là định nghĩa dạng xem và các truy vấn sẽ lọc trên cột hiển thị cảnh báo, trong câu hỏi .
John Eisbrener
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.