<p>Is there any way in SQL Server to get the results starting at a given offset? For example, in another type of SQL database, it's possible to do:</p>

<pre><code>SELECT * FROM MyTable OFFSET 50 LIMIT 25
</code></pre>

<p>to get results 51-75. This construct does not appear to exist in SQL Server.  </p>

<p>How can I accomplish this without loading all the rows I don't care about?  Thanks! </p>

Depending on your version ou cannot do it directly, but you could do something hacky like
```
```
select top 25 *
from ( 
  select top 75 *
  from   table 
  order by field asc
) a 
order by field desc
```
```
where 'field' is the key.