背景
Oracleでは「指定した範囲のレコードのみを取得」が簡易にできるようだが、
SQL Serverではできないため工夫が必要
サンプルプログラム概要
employeeテーブルにある2~3行目のレコードのみを、
employee_20191201テーブルへ登録する
サンプルプログラム
INSERT into [dbo].[employee_20191201] --登録するテーブルを指定
SELECT [Id],[Name],[Birthday],[Gender] FROM ( --取得元のテーブルの全てのカラムを指定
SELECT --並び変えで使用するカラムを指定
ROW_NUMBER() OVER ( ORDER BY [Id],[Name] ) AS row_num,
*
FROM [dbo].[employee] --取得元のテーブルを指定
) TMP WHERE row_num BETWEEN 2 AND 3 --取得したいレコードの範囲を指定