>Rushmore is the genie that makes them. If the engine decides that a filtered result set will be the quickest way to go, then it returns them.
>
>I discovered this when I added an index tag on DELETED() (which spawned the other part of this thread), and suddenly I received 'filtered result sets' whereas before the tag I received a NOFILTER version.
>
>The same SQL statement was used for both versions, adding the DELETED() tag returned filtered result sets, deleting it returned NOFILTER versions.
The worst thing about it, as I noted to Walter yesterday, is that it's not predictable. I can add Deleted tag to optimized SQL, very simple like
Select * from table where real_basic_index_on_field = etc into cursor
and try for days to get filtered result, but no go. Then out of the blue weeks later, there it is, suddenly, and USE AGAIN crashes...
Then I may try it again & again, and see the filtered set over & over, perhaps due to some memory/virtual memory situation, who knows...
Anyway, we should all have a pretty full understanding of how to control result sets, when to use a Deleted tag, and so forth, after all the discussions, tests, and the Advisor article...it's been most enlightening to me.
The Anonymous Bureaucrat,
and frankly, quite content not to be
a member of either major US political party.