WITH q AS ( SELECt startId, endId FROM ranges UNIOn ALL SELECt startId + 1, endId FROM q WHERe startId < endId )SELECt startIdFROM qOPTION (MAXRECURSION 0)

WITH q AS ( SELECt startId, endId FROM ranges UNIOn ALL SELECt startId + 1, endId FROM q WHERe startId < endId )SELECt startIdFROM qOPTION (MAXRECURSION 0)