Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak usunąć niechciane znaki wiodące z ciągu w MySQL?

Problem:

Chcesz usunąć sekwencję znaków na początku ciągu.

Przykład:

Nasza baza danych zawiera tabelę o nazwie product z danymi w trzech kolumnach:id , imię i model .

id imię model
1 oglądaj Lx0A123
2 smartwatch Lx0W34
3 zdjęcie zegara Lx0G100

Skróćmy kod modelu każdego nowego produktu, usuwając niepotrzebne znaki (Lx0) na początku.

Rozwiązanie 1:

Użyjemy TRIM() funkcjonować. Oto zapytanie, które możesz napisać:

SELECT name, 
  TRIM(LEADING 'Lx0' FROM model ) AS new_model_code
FROM product;

Oto wynik:

nazwa nowy_kod_modelu
oglądaj A123
smartwatch W34
zdjęcie zegara G100

Dyskusja:

Użyj TRIM() funkcja z LEADING słowo kluczowe, aby usunąć znaki na początku ciągu. TRIM() umożliwia usunięcie określonych znaków lub spacji z początku, końca lub obu końców ciągu. Ta funkcja przyjmuje następujące argumenty:

  • Opcjonalne słowo kluczowe, które określa końce do przycięcia. Domyślnie jest to BOTH , ale możesz zdefiniować LEADING (usuń od początku) lub TRAILING (usuń z końca).
  • Ciąg definiujący znak(i)/spację(e), które chcesz usunąć z łańcucha (w naszym przykładzie sekwencja „Lx0”).
  • FROM słowo kluczowe.
  • Nazwa ciągu/kolumny do przycięcia (w naszym przykładzie model kolumna).

W naszym przykładzie wygląda to tak:

TRIM(LEADING 'Lx0' FROM model)

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Przykład użycia bind_result vs get_result

  2. Eksportuj bazę danych MySQL do bazy danych SQLite

  3. Plik PHP nie może wprowadzić jakiejś części kodu

  4. Jak powiązać parametry z surowym zapytaniem DB w Laravel, które jest używane w modelu?

  5. JSON_EXTRACT() – Zwróć dane z dokumentu JSON w MySQL