This article was previously published under Q275900
This article has been archived. It is offered "as is" and will no longer be updated.
BUG #: 236178 (SHILOH_bugs)
A query that has a LIKE clause that contains a hyphen (-) character may run slower than expected against a non-SQL Server data source for a remote table with a large number of rows.
To resolve this problem, obtain the latest service pack for Microsoft SQL Server 2000. For additional information, click the following article number to view the article in theMicrosoft Knowledge Base:
290211 INF: How to Obtain the Latest SQL Server 2000 Service Pack
NOTE: The following hotfix was created prior to Microsoft SQL Server 2000 Service Pack 1.
The English version of this fix should have the following file attributes or later:
Version File name Platform --------------------------------------------------------- 8.00.210 s80210i.exe Intel
NOTE: Due to file dependencies, the most recent hotfix or feature that contains the above files may also contain additional files.
If the linked server provider supports it, use the OPENQUERY rowset function to force the entire query to be passed to the remote server.
Microsoft has confirmed that this is a problem in Microsoft SQL Server 2000. This problem was first corrected in SQL Server 2000 Service Pack 1.
In this situation, the LIKE clause criteria are applied at the local SQL Server after retrieving all rows from the remote table. So a query such as the following
select * from myremoteserver.mycatalog.myschema.mytable where col1 LIKE 'MS-'
is processed as follows:
All of the rows from "mytable" are retrieved from the linked server to the local SQL Server.
The local SQL Server then applies the LIKE clause criteria to produce the final result.Optimally, the remote source handles the application of the criteria so that fewer rows are returned to the local SQL Server.