gpt4 book ai didi

sql - 如何在 MS sql server 上的列中查找和删除字母

转载 作者:行者123 更新时间:2023-12-02 21:21:50 27 4
gpt4 key购买 nike

我有一列字母数字 ID,我们称之为 [IDS]。

ID 只能是数字,但其中一些包含杂散字符。

例如:

[IDS]

- 012345A
- 23456789AF
- 789789

我只想将它们转换为数字 - 所以输出将是:

[IDS]
012345
23456789
789789

我想编写一些代码来在列中搜索字母表 (A-Z) 中的所有字母并删除它们,以便提取数值。

我知道我可以进行替换(替换(替换(....等),但对于字母表中的所有 26 个字母,这并不理想。

我现在尝试使用“声明@”来解决它,但这些似乎是为特定字符串设计的,我希望搜索和替换整个列。

使用 Microsoft SQL Server。

谢谢

最佳答案

CREATE TABLE #Table11
([IDS] varchar(10))
;

INSERT INTO #Table11
([IDS])
VALUES
('012345A'),
('23456789AF'),
('789789')
;


SELECT SUBSTRING([IDS], PATINDEX('%[0-9]%', [IDS]), PATINDEX('%[0-9][^0-9]%', [IDS] + 't') - PATINDEX('%[0-9]%',
[IDS]) + 1) AS IDS
FROM #Table11

输出

IDS
012345
23456789
789789

关于sql - 如何在 MS sql server 上的列中查找和删除字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52274318/

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