我有一张桌子“Temp”。我想从下表中只提取字母表,并希望输出如下: 的 COL
ABC123
456CDE
F789GH
输出
ABC
CDE
FGH
答案 0 :(得分:2)
如果使用支持REGEXP_REPLACE
的数据库,请使用:
SELECT REGEXP_REPLACE(col, '\d', '', 'g') FROM yourTable;
上面是你要为Postgres做的电话,对于Oracle,你不需要g
贪婪标志,因为默认情况下替换将是贪婪的。
如果使用没有正则表达式替换支持的数据库,例如MySQL或SQL Server,然后我们仍然可以单独替换每个数字:
SELECT
REPLACE(REPLACE(REPLACE(col, '9', ''), '8', ''), '7', '') -- ... replace 1-6 also
FROM yourTable;
答案 1 :(得分:0)
如果您使用的是oracle,可以使用REGEXP_REPLACE
。
SELECT REGEXP_REPLACE(col,'[0-9]','') FROM Temp