IF WE WANT TO SELECT TOP N ROWS FROM A TABLE ,
WE USE THE FETCH NEXT
SELECT * FROM table1 ---//First m rows ignore first n rows
ORDER BY id OFFSET n ROWS
FETCH NEXT m ROWS ONLY
if n=0, m=10 then first 10 rows
if n=10, m=10 then first 10 rows start from 11th row
Row_number()
SELECT ROW_NUMBER() OVER(order by db.id)
Insertion Simultaneouly in temp table with output clause
DECLARE @table1 table
(
Id int,
name nvarchar(50)
);
DECLARE @table2 table
(
Id int,
name nvarchar(50)
);
INSERT INTO @table2
OUTPUT INSERTED.*
INTO @table1
select top 10 id, name from FinalTable
SELECT * FROM @table2;
SELECT * FROM @table1;
WE USE THE FETCH NEXT
SELECT * FROM table1 ---//First m rows ignore first n rows
ORDER BY id OFFSET n ROWS
FETCH NEXT m ROWS ONLY
if n=0, m=10 then first 10 rows
if n=10, m=10 then first 10 rows start from 11th row
Row_number()
SELECT ROW_NUMBER() OVER(order by db.id)
Insertion Simultaneouly in temp table with output clause
DECLARE @table1 table
(
Id int,
name nvarchar(50)
);
DECLARE @table2 table
(
Id int,
name nvarchar(50)
);
INSERT INTO @table2
OUTPUT INSERTED.*
INTO @table1
select top 10 id, name from FinalTable
SELECT * FROM @table2;
SELECT * FROM @table1;
Comments