您可以使用递归CTE完成此操作
CREATE TABLE ranges ( ColA int, ColB char, LowRange int, HighRange int,);INSERT INTO rangesVALUES (1, 'A', 1, 5),(2, 'B', 5, 10);GOCREATE VIEW range_viewASWITH each AS( SELECt ColA, ColB, LowRange AS n, HighRange FROM ranges UNIOn ALL SELECt ColA, ColB, n + 1, HighRange FROM each WHERe n + 1 <= HighRange)SELECt ColA, ColB, nFROM eachGOSELECt * FROM range_viewDROP VIEW range_viewDROP TABLE ranges;



