Проблем:
Искате да премахнете поредица от знаци в началото на низ.
Пример:
Нашата база данни има таблица с име product с данни в три колони:id , име и модел .
| id | име | модел |
|---|---|---|
| 1 | гледайте | Lx0A123 |
| 2 | умен часовник | Lx0W34 |
| 3 | снимка на часовника | Lx0G100 |
Нека отрежем кода на модела на всеки нов продукт, като премахнем ненужните знаци (Lx0) в началото.
Решение 1:
Ще използваме TRIM() функция. Ето заявката, която бихте написали:
SELECT name, TRIM(LEADING 'Lx0' FROM model ) AS new_model_code FROM product;
Ето резултата:
| name | нов_код_модел |
|---|---|
| гледайте | A123 |
| умен часовник | W34 |
| снимка на часовника | G100 |
Дискусия:
Използвайте TRIM() функция с LEADING ключова дума за премахване на знаци в началото на низ. TRIM() ви позволява да премахнете конкретни знак(и) или интервал(и) от началото, края или двата края на низ. Тази функция приема следните аргументи:
- Незадължителна ключова дума, която определя края(ите) за отрязване. По подразбиране е
BOTH, но можете да дефиниратеLEADING(премахване от началото) илиTRAILING(премахване от края). - Низ, дефиниращ символа/интервалата, които искате да премахнете от низа (в нашия пример последователността „Lx0“).
FROMключова дума.- Името на низа/колона, което трябва да бъде изрязано (в нашия пример, моделът колона).
В нашия пример това изглежда така:
TRIM(LEADING 'Lx0' FROM model)