如何获取带前导零的值

发布于 2024-12-20 02:34:54 字数 290 浏览 0 评论 0原文

表1

ID (NVarchar Column)

01 
02
03
...

查询

Select max(id) from table1

输出是

3

我想获得带前导零的最大id,如果是002意味着查询应该返回002

预期输出是

03

如何做到这一点

需要查询帮助

Table1

ID (NVarchar Column)

01 
02
03
...

Query

Select max(id) from table1

Ouput is

3

I want to get maximum id with leading zero, if it is 002 means, the query should return 002

Expected Output is

03

How to do this

Need Query Help

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

看轻我的陪伴 2024-12-27 02:34:55

我执行了以下代码:

 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

我会检查您是否正确定义了数据类型。

I executed the following piece of code:

 DECLARE @TABLE TABLE (
            ID nvarchar(10)
            )

 INSERT @TABLE VALUES ( '003' )
 INSERT @TABLE VALUES ( '004' )

 SELECT MAX (ID)

 FROM @TABLE

The output was

  004

When using the data type as int however:

DECLARE @TABLE TABLE (
            ID int
            )

INSERT @TABLE  values ( '003' )
INSERT @TABLE VALUES ( '004')

SELECT MAX (ID )

FROM @TABLE

The output was:

4

I would check you have your data types defined correctly.

也只是曾经 2024-12-27 02:34:55

要了解这个想法:从 table1 中选择 right('000' + max(id),2)

To get the idea: Select right('000' + max(id),2) from table1

孤凫 2024-12-27 02:34:55

您可以按如下方式编写查询:

declare @input int, @len int
set @len = 2
select right(REPLICATE('0',@len)+convert(varchar(5),2),@len ) AS LPAD

我假设您始终知道长度。您也可以将其设为 UDF。

You can write the query as following:

declare @input int, @len int
set @len = 2
select right(REPLICATE('0',@len)+convert(varchar(5),2),@len ) AS LPAD

I am assuming that you know the length all the time. You can make it a UDF as well.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文