如何从亚马逊红移中的字符串中删除非数字字符(句号 "." 除外)

Jha*_*i N 2 sql string amazon-redshift

我一直在试图弄清楚如何删除non-numeric除句号之外的多个 字符("."),或者只返回(".")字符串中带有句号的数字字符。我试过了:

SELECT regexp_replace('~�$$$1$$#1633,123.60&&!!__!', '[^0-9]+', '')
Run Code Online (Sandbox Code Playgroud)

此查询返回以下结果: 1163312360

但我希望结果为 11633123.60

Jay*_*ani 6

请试试这个:

下面的 regex_replace 表达式将替换(0-9 范围内)和“.”中所有不是(“^”)的字符。

SELECT regexp_replace('ABC$$$%%11633123.60','([^0-9.])','') FROM DUAL;
Run Code Online (Sandbox Code Playgroud)

它返回预期的输出 "11633123.60"