TSQL/MSSQL Select - 零填充整数
我有一个 SQL select 语句:
select pk from items
它返回:
1
2
4
29
8
987654
12313232
现在我的老板想要这样的东西:
000001
000002
000004
000029
000008
987654
12313232
他肯定希望输出最少为六位数字(我认为这是无稽之谈)。
我尝试过执行类似 '00000' + Convert(nvarchar(6),pk)
的操作,仅当 pk
仅为一位数字时才可以正常工作。您知道如何做到这一点吗?我应该使用条件语句吗?
I have an SQL select statement:
select pk from items
it returns:
1
2
4
29
8
987654
12313232
Now my boss wants something like:
000001
000002
000004
000029
000008
987654
12313232
He definitely want the output to be six digits minimum (which I think nonsense).
I've tried doing something like '00000' + convert(nvarchar(6),pk)
which works okay only if the pk
is just one digit. Do you have any idea how to do this? Should I use conditional statement?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
通常是这个,但是当你的值超过6位时,试试这个
但是你需要一个 CASE 来处理 7-9 位长的数字:。
Normally thisBut as you have values more than 6 digits, try this
But you need a CASE to deal with numbers that are 7-9 digits long:.