Problema:
Desideri rimuovere una sequenza di caratteri all'inizio di una stringa.
Esempio:
Il nostro database ha una tabella denominata product con i dati in tre colonne:id , nome e modello .
| id | modello | |
|---|---|---|
| 1 | guarda | Lx0A123 |
| 2 | smartwatch | Lx0W34 |
| 3 | foto dell'orologio | Lx0G100 |
Tagliamo il codice modello di ogni nuovo prodotto, rimuovendo i caratteri non necessari (Lx0) all'inizio.
Soluzione 1:
Useremo il TRIM() funzione. Ecco la domanda che scriveresti:
SELECT name, TRIM(LEADING 'Lx0' FROM model ) AS new_model_code FROM product;
Ecco il risultato:
| nome | new_model_code |
|---|---|
| guarda | A123 |
| smartwatch | W34 |
| foto dell'orologio | G100 |
Discussione:
Usa TRIM() funzione con il LEADING parola chiave per rimuovere i caratteri all'inizio di una stringa. TRIM() consente di rimuovere caratteri o spazi specifici dall'inizio, dalla fine o da entrambe le estremità di una stringa. Questa funzione accetta i seguenti argomenti:
- Una parola chiave facoltativa che specifica le estremità da tagliare. Per impostazione predefinita, è
BOTH, ma puoi definireLEADING(rimuovi dall'inizio) oTRAILING(rimuovere dalla fine). - Una stringa che definisce il/i carattere/i/gli spazi che vuoi rimuovere dalla stringa (nel nostro esempio, la sequenza 'Lx0').
- Il
FROMparola chiave. - Il nome della stringa/colonna da tagliare (nel nostro esempio, il modello colonna).
Nel nostro esempio, questo è simile a:
TRIM(LEADING 'Lx0' FROM model)