Applies ToSQL Server 2017 on Windows SQL Server 2019 on Windows

Symptoms

Assume that you have Microsoft SQL Server 2017 or 2019 installed, and that it runs with default Cardinality Estimation (CE). You execute a query that has a filter predicate on column Col1. Query predicates have intrinsic UPPER, LOWER, or RTRIM. Col1 has statistics to be used by the optimizer. In this scenario, you may observe inaccurate cardinality estimates and that SQL Server uses an inefficient plan. The following are some queries that have predicates:

SELECT person_id FROM Person WHERE (email LIKE UPPER(N'@live.com%'))

SELECT person_id FROM Person WHERE (email = UPPER(N'msft@live.com'))

Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

Resolution

This issue is fixed in the following cumulative updates for SQL Server:

About cumulative updates for SQL Server:

Each new cumulative update for SQL Server contains all the hotfixes and all the security fixes that were included with the previous cumulative update. Check out the latest cumulative updates for SQL Server:

Note This fix requires one of the following to take effect:

References

Learn about the terminology that Microsoft uses to describe software updates.

Need more help?

Want more options?

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.