表1
ID (NVarchar Column)
01
02
03
...
查询
Select max(id) from table1
输出
3
我想获得前导零的最大id,如果是002意味着,查询应该返回002
预期输出
03
如何做到这一点
需要查询帮助
答案 0 :(得分:3)
我执行了以下代码:
DECLARE @TABLE TABLE (
ID nvarchar(10)
)
INSERT @TABLE VALUES ( '003' )
INSERT @TABLE VALUES ( '004' )
SELECT MAX (ID)
FROM @TABLE
输出
004
当使用数据类型为int时:
DECLARE @TABLE TABLE (
ID int
)
INSERT @TABLE values ( '003' )
INSERT @TABLE VALUES ( '004')
SELECT MAX (ID )
FROM @TABLE
输出结果为:
4
我会检查您是否正确定义了数据类型。
答案 1 :(得分:1)
获得想法:Select right('000' + max(id),2) from table1
答案 2 :(得分:0)
您可以按如下方式编写查询:
declare @input int, @len int
set @len = 2
select right(REPLICATE('0',@len)+convert(varchar(5),2),@len ) AS LPAD
我假设你一直都知道长度。你也可以把它变成UDF。