gpt4 book ai didi

string - T-SQL 中的整数 PadLeft 函数

转载 作者:行者123 更新时间:2023-12-03 04:42:19 27 4
gpt4 key购买 nike

我有下表A:

id
----
1
2
12
123
1234

我需要在 id 值的左侧填充零:

id
----
0001
0002
0012
0123
1234

我怎样才能实现这个目标?

最佳答案

我相信这可能就是您所寻找的:

SELECT padded_id = REPLACE(STR(id, 4), SPACE(1), '0') 

FROM tableA

SELECT REPLACE(STR(id, 4), SPACE(1), '0') AS [padded_id]

FROM tableA

我还没有测试第二个示例的语法。我不确定这是否 100% 有效 - 它可能需要一些调整 - 但它传达了如何获得所需输出的总体思路。

编辑

为了解决评论中列出的问题...

@pkr298 - 是的 STR 只适用于数字...OP 的字段是一个 ID...因此仅适用于数字。

@Desolator - 当然这是行不通的...第一个参数是 6 个字符长。您可以执行以下操作:

SELECT REPLACE(STR(id,
(SELECT LEN(MAX(id)) + 4 FROM tableA)), SPACE(1), '0') AS [padded_id] FROM tableA

理论上这应该会移动球门柱...随着数字变大,它应该始终有效...无论是 1 还是 123456789...

因此,如果您的最大值是 123456...您会看到 0000123456,如果您的最小值是 1,您会看到 0000000001

关于string - T-SQL 中的整数 PadLeft 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5540064/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com