Mysql
 sql >> Database >  >> RDS >> Mysql

Come funziona la funzione TRIM() in MySQL

In MySQL, il TRIM() la funzione taglia gli spazi bianchi (o altri caratteri specificati) dall'inizio e/o dalla fine di una stringa.

Puoi specificare se tagliare dal lato sinistro, dal lato destro o da entrambi i lati della corda.

Sintassi

La funzione può essere utilizzata in uno dei seguenti modi:

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

Dove str è la stringa da tagliare e remstr è un argomento facoltativo che specifica quale carattere tagliare.

Esempio 1 – Utilizzo di base

Ecco un esempio di base di rimozione degli spazi bianchi da entrambi i lati di una stringa:

SELECT TRIM(' Irish Wolfhound ') AS Trimmed;

Risultato:

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

Sia lo spazio iniziale che quello finale vengono rimossi. Nota che qualsiasi spazio all'interno della stringa rimane intatto.

Per dimostrare meglio l'effetto, ecco come appare rispetto alla stringa non tagliata:

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

Risultato:

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

Se guardi da vicino, vedrai che il primo risultato ha spazio extra su entrambi i lati e il secondo no. Ciò è dimostrato ancora più chiaramente nel prossimo esempio.

Spazi multipli

Se hai più spazi, tutti vengono tagliati:

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

Risultato:

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

Altri personaggi

Non sei solo limitato a tagliare gli spazi bianchi. Puoi usare questa funzione per tagliare altri caratteri. Ecco un esempio:

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

Risultato:

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

Puoi anche specificare più caratteri, ma tieni presente che l'ordine è importante.

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

Risultato:

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

Quindi puoi ritagliare un'intera parola se lo desideri:

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

Risultato:

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

Taglia il personaggio principale

Puoi anche specificare se tagliare solo lo spazio/i caratteri iniziali, quelli finali o entrambi.

Ecco un esempio di taglio del solo personaggio principale:

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

Risultato:

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

Ritaglia il personaggio finale

Tagliando solo il carattere finale:

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

Risultato:

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

Taglia sia in testa che in coda

Come visto negli esempi precedenti, TRIM() la funzione taglia entrambi i lati per impostazione predefinita. Tuttavia, hai anche la possibilità di dichiararlo esplicitamente utilizzando BOTH .

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

Risultato:

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

Funzioni simili

Se hai solo bisogno di tagliare lo spazio iniziale, considera l'utilizzo di LTRIM() . Se hai solo bisogno di tagliare lo spazio finale, considera l'utilizzo di RTRIM() .