gpt4 book ai didi

mysql - sql中的零填充字母数字字符串

转载 作者:行者123 更新时间:2023-11-30 23:10:14 25 4
gpt4 key购买 nike

如果是一位数字,我想在字母数字字符串中添加零。

我得到的是这样的:

CV-1-1A
CV-1-32
CV-12-24
CV-1-2
CV-1-2A

我想将其更改为:

CV-01-01A
CV-01-32
CV-12-24
CV-01-02
CV-01-02A

最佳答案

LPAD可用于对字符串进行零填充(或用任何字符填充)。但是,它不能在字符串内部工作,因此需要一些技巧。假设您所有的值的格式都是 a-b-c其中 a , bc是最多 3 个字符的字符串,您可以使用 SUBSTRING_INDEX将字符串分成几部分,LPAD每个部分单独使用 CONCAT将它们全部放回一起:

SELECT CONCAT(SUBSTRING_INDEX(col, '-', 1), 
'-',
LPAD(SUBSTRING_INDEX(SUBSTRING_INDEX(col, '-', 2), '-', -1), 2, '0'),
'-',
LPAD(SUBSTRING_INDEX(col, '-', -1), 3, '0'))
FROM t;

这是一个 SQLFiddle有一个工作示例。

关于mysql - sql中的零填充字母数字字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20102602/

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