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()
.