Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
100 行のテーブルがあり、SELECT を「ページング」するように、それらの一部 (たとえば、行 20 から 30) だけを選択したいと考えています。
SQL Server 2008 R2 でこれを行う効率的な方法はどれですか?
このようにすることができます (テーブルが "tablename" と呼ばれ、主キーが id で、行 10 から 15 が必要であると仮定します)。
select * from (select *,row_number() over (order by id) as r from tablename) t where r >10 and r < 15;
非効率的に見えるかもしれませんが、これはlinqで内部的に行われる方法です。