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
FROM
parola 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)