sql >> Base de Datos >  >> RDS >> PostgreSQL

eliminar caracteres no numéricos en una columna (variación de caracteres), postgresql (9.3.5)

Usando regexp_replace es más simple:

# select regexp_replace('test1234test45abc', '[^0-9]+', '', 'g');
 regexp_replace 
----------------
 123445
(1 row)

El ^ significa not , por lo que cualquier carácter que no en el rango 0-9 será reemplazado con una cadena vacía, '' .

El 'g' es una bandera que significa que se reemplazarán todas las coincidencias, no solo la primera.