sql >> Base de Datos >  >> RDS >> Mysql

Cómo funciona la función TRIM() en MySQL

En MySQL, el TRIM() La función recorta los espacios en blanco (u otros caracteres especificados) desde el principio y/o el final de una cadena.

Puede especificar si desea recortar desde el lado izquierdo, el lado derecho o ambos lados de la cadena.

Sintaxis

La función se puede utilizar de cualquiera de las siguientes formas:

TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str)
TRIM([remstr FROM] str)

Donde str es la cadena a recortar, y remstr es un argumento opcional que especifica qué carácter recortar.

Ejemplo 1:uso básico

Aquí hay un ejemplo básico de cómo eliminar espacios en blanco de ambos lados de una cadena:

SELECT TRIM(' Irish Wolfhound ') AS Trimmed;

Resultado:

+-----------------+
| Trimmed         |
+-----------------+
| Irish Wolfhound |
+-----------------+

Tanto el espacio inicial como el posterior se eliminan. Tenga en cuenta que cualquier espacio dentro de la cadena permanece intacto.

Para demostrar mejor el efecto, así es como se ve en comparación con la cadena sin recortar:

SELECT 
  ' Irish Wolfhound ' AS Untrimmed,
  TRIM(' Irish Wolfhound ') AS Trimmed;

Resultado:

+-------------------+-----------------+
| Untrimmed         | Trimmed         |
+-------------------+-----------------+
|  Irish Wolfhound  | Irish Wolfhound |
+-------------------+-----------------+

Si observa detenidamente, verá que el primer resultado tiene espacio adicional en ambos lados y el segundo no. Esto se demuestra aún más claramente en el siguiente ejemplo.

Múltiples espacios

Si tiene varios espacios, se recortan todos:

SELECT 
  ' Irish Wolfhound ' AS Untrimmed,
  TRIM(' Irish Wolfhound ') AS Trimmed;

Resultado:

+-------------------------+-----------------+
| Untrimmed               | Trimmed         |
+-------------------------+-----------------+
|     Irish Wolfhound     | Irish Wolfhound |
+-------------------------+-----------------+

Otros personajes

No solo está limitado a recortar espacios en blanco. Puede utilizar esta función para recortar otros caracteres. He aquí un ejemplo:

SELECT TRIM('=' FROM '====Irish Wolfhound====') AS Trimmed;

Resultado:

+-----------------+
| Trimmed         |
+-----------------+
| Irish Wolfhound |
+-----------------+

También puede especificar varios caracteres, pero tenga en cuenta que el orden es importante.

SELECT TRIM('=+' FROM '=+Irish Wolfhound+=') AS Trimmed;

Resultado:

+-------------------+
| Trimmed           |
+-------------------+
| Irish Wolfhound+= |
+-------------------+

Así que puedes recortar una palabra entera si lo deseas:

SELECT TRIM('Irish ' FROM 'Irish Wolfhound') AS Trimmed;

Resultado:

+-----------+
| Trimmed   |
+-----------+
| Wolfhound |
+-----------+

Recortar personaje principal

También puede especificar si desea recortar solo el espacio o los caracteres iniciales, los finales o ambos.

Este es un ejemplo de cómo recortar solo el carácter principal:

SELECT TRIM(LEADING '=' FROM '====Irish Wolfhound====') AS Trimmed;

Resultado:

+---------------------+
| Trimmed             |
+---------------------+
| Irish Wolfhound==== |
+---------------------+

Recortar carácter final

Recortar solo el carácter final:

SELECT TRIM(TRAILING '=' FROM '====Irish Wolfhound====') AS Trimmed;

Resultado:

+---------------------+
| Trimmed             |
+---------------------+
| ====Irish Wolfhound |
+---------------------+

Recorte tanto al principio como al final

Como se vio en los ejemplos anteriores, el TRIM() La función recorta ambos lados por defecto. Sin embargo, también tiene la opción de declarar esto explícitamente usando BOTH .

SELECT TRIM(BOTH '=' FROM '====Irish Wolfhound====') AS Trimmed;

Resultado:

+-----------------+
| Trimmed         |
+-----------------+
| Irish Wolfhound |
+-----------------+

Funciones similares

Si solo necesita recortar el espacio inicial, considere usar LTRIM() . Si solo necesita recortar el espacio final, considere usar RTRIM() .