Проблем:
Искате да премахнете поредица от знаци в началото на низ.
Пример:
Нашата база данни има таблица с име 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)