Cómo eliminar espacio y valor de col1 y crear una nueva columna basada en él en Teradata SQL?
Tengo una tabla en Teradata SQL como la siguiente:
col1
123 ABC Berlin
44567 ABC Rome
11 ABC New York
Y basándome en “col1”, necesito eliminar un espacio y “ABC” de la columna “col1” y solo dejar el número, el espacio y el nombre de la ciudad, por lo que el resultado debe ser algo como esto:
col1 col2
123 ABC Berlin | 123 Berlin
44567 ABC Rome | 44567 Rome
11 ABC New York | 11 New York
¿Cómo puedo hacer eso en Teradata SQL?
Tengo un código como este, pero elimina tanto el número como “ABC”, lo cual no es bueno en términos de mis requisitos: REGEXP_REPLACE(col, ‘[^ ]+ ‘, ”)
davy.ai
Para lograr el resultado deseado, se puede utilizar el siguiente código SQL de Teradata:
Explicación:
REGEXP_REPLACE
reemplaza cualquier secuencia de dígitos seguida de un espacio o la cadena “ABC” con una cadena vacía, eliminándolos efectivamente del valor original de la columna.TRIM
elimina cualquier espacio al principio o al final del resultado deREGEXP_REPLACE
.col1
como la columna modificadacol2
para todas las filas de su tabla. ReemplaceyourTableName
con el nombre real de su tabla.