使用SUBSTRING()函数(Fiddle example)试试这个:
--Declare sample table
DECLARE @T TABLE (id int identity, numCol1 int, numCol2 int)
--Add some values
INSERT @T (numCol1, numCol2)
VALUES (3, 7), (1, 4), (2, 2)
--Actual Query
SELECT *, SUBSTRING('123456789', numCol1, numCol2 - numCol1 + 1) Number
FROM @T
以上查询仅适用于单个数字。 Modified version(下)可以处理 34、78 等数字
SELECT *,
SUBSTRING('123456789', CONVERT(int, LEFT(numCol1,1)),
CONVERT(int, RIGHT(numCol2, 1)) - convert(int, LEFT(numCol1,1)) + 1) YourNumber
FROM @T
注意:数字列返回string,可以使用convert() 函数转换为int