【SQLServer】件数を指定してSELECTする方法

SQLServerでSELECT文を発行する際、件数を指定して検索する方法をご紹介します。

MySQLでのLimit句、Oracleで言うところのrownum条件と同じ内容です。

-- 1~10行目の10件のデータを取得する例
SELECT 
    Main.* 
FROM (
    SELECT 
        ROW_NUMBER() OVER (ORDER BY [並び順にするカラム]) AS recordnum 
        , * 
    FROM [テーブル名] ) AS Main
WHERE Main.recordnum BETWEEN 1 AND 10
ORDER BY Main.recordnum;

6行目の[並び順にするカラム]にテーブルのカラムを指定すれば、そのカラムの昇順で件数指定が可能です。

7行目にテーブルを名を指定してご利用ください。

8行目の「WHERE Main.recordnum BETWEEN 1 AND 10」で10件を指定しています。「1 AND 100」と変更すると先頭から100件データを取得できます。

さらに「200 AND 300」とすると先頭から数えて200行目から300行目の100件を取得する範囲指定も可能です。



投稿日:2019-09-09    更新日:2019-09-11

[スポンサーリンク]

関連記事
勉強した内容を緩くメモする|JBの技術メモ
勉強した内容を緩くメモする|JBの技術メモ
勉強した内容を緩くメモする|JBの技術メモ
勉強した内容を緩くメモする|JBの技術メモ
勉強した内容を緩くメモする|JBの技術メモ
勉強した内容を緩くメモする|JBの技術メモ
サイト内検索
プロフィール

プロフィール

[Name : じゃぶじゃぶ(@jbjb_2019)]
都内で社内SEをしているおじさん。
仕事で得られる知識だけでは限界を感じ、 WEBの勉強がてらITブログを開始。
サーバからWEBサイトまでフルスクラッチで開発しました。
現在は勉強のモチベーションを保つために活用中。
興味があることを雑記的に書いていきます。

[スポンサーリンク]

[スポンサードリンク]