Problema:
Le gustaría eliminar una secuencia de caracteres al principio de una cadena.
Ejemplo:
Nuestra base de datos tiene una tabla llamada product
con datos en tres columnas:id , nombre y modelo .
id | nombre | modelo |
---|---|---|
1 | ver | Lx0A123 |
2 | reloj inteligente | Lx0W34 |
3 | foto del reloj | Lx0G100 |
Recortemos el código de modelo de cada nuevo producto, eliminando los caracteres innecesarios (Lx0) al principio.
Solución 1:
Usaremos el TRIM()
función. Esta es la consulta que escribirías:
SELECT name, TRIM(LEADING 'Lx0' FROM model ) AS new_model_code FROM product;
Aquí está el resultado:
nombre | nuevo_código_modelo |
---|---|
reloj | A123 |
reloj inteligente | W34 |
foto del reloj | G100 |
Discusión:
Utilice el TRIM()
función con el LEADING
palabra clave para eliminar caracteres al principio de una cadena. TRIM() le permite eliminar caracteres o espacios específicos del principio, el final o ambos extremos de una cadena. Esta función toma los siguientes argumentos:
- Una palabra clave opcional que especifica los extremos a recortar. Por defecto, es
BOTH
, pero puedes definirLEADING
(quitar del principio) oTRAILING
(quitar del final). - Una cadena que define los caracteres/espacios que desea eliminar de la cadena (en nuestro ejemplo, la secuencia 'Lx0').
- El
FROM
palabra clave. - El nombre de la cadena/columna que se recortará (en nuestro ejemplo, el modelo columna).
En nuestro ejemplo, esto se ve así:
TRIM(LEADING 'Lx0' FROM model)