;WITH Missing (missnum, maxid)AS( SELECT 1 AS missnum, (select max(RegisterNo ) FROM dbo.studentMaster) UNION ALL SELECT missnum + 1, maxid FROM Missing WHERE missnum < maxid)SELECT missnumFROM MissingLEFT OUTER JOIN dbo.studentMaster tt on tt.RegisterNo = Missing.missnumWHERE tt.RegisterNo is NULLOPTION (MAXRECURSION 0);