繁体   English   中英

如何从SQL中的字符串中仅获取字母

[英]How to get only alphabets from string in sql

我有一张桌子“临时”。 我只想从下表中提取字母,并希望输出如下: col

ABC123
456CDE
F789GH

输出值

ABC
CDE
FGH

如果使用支持REGEXP_REPLACE的数据库,请使用以下命令:

SELECT REGEXP_REPLACE(col, '\d', '', 'g') FROM yourTable;

上面是您对Postgres的调用,对于Oracle,您不需要g greedy标志,因为默认情况下替换将是greedy。

如果使用不带正则表达式替换支持的数据库,例如MySQL或SQL Server,那么我们仍然可以分别替换每个数字:

SELECT
    REPLACE(REPLACE(REPLACE(col, '9', ''), '8', ''), '7', '')  -- ... replace 1-6 also
FROM yourTable;

如果使用的是oracle,则可以使用REGEXP_REPLACE

 SELECT REGEXP_REPLACE(col,'[0-9]','') FROM Temp

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM