Our developers wrote some code: There are two tables. Table1 - Fields such as ID, DocumentID, subDocumentID Table2 - Fields such as subDocumentID, FileType, FilePath, etc I'm guessing they want to pull out the FilePath, and guessin that all subDocuments for each given Document is stored in the same location, so all they would need is the first record, from which they can parse out the path. The query they execute looks something like this: Select top 1 b.FilePath from Table1 a, Table2 b where a.DocumentID = '12345' and a.subDocumentID = b.subDocumentID and b.FileType <= 2 Both tables have many entries, 11,000,000 +. The problem is that when the statement executes, it takes some 2-5 minutes to execute to return 1 row. If however, the Top 1 clause is removed, it executes in 3 seconds, even though it might return say 1500-2500 rows. With regards to indexes, Table1 has a nonclustered index on DocumentID, and Table2 has a primary clustered index on subDocumentID and FileType. I've also noticed that if we execute the query and add an order by, it returns the results quite quickly. I.e.: Select top 1 b.FilePath from Table1 a, Table2 b where a.DocumentID = '12345' and a.subDocumentID = b.subDocumentID and b.FileType <= 2 order by a.ID (where Table1 has a primary clustered index on ID) Any ideas on why the query runs so slowly with the Top operator?