MySQL ma funkcję TRIM()
funkcja, która umożliwia usunięcie wiodących i/lub końcowych białych znaków z ciągu.
Możesz go również użyć do usunięcia innych określonych znaków z dowolnej strony (lub obu stron) ciągu.
W tym artykule wyjaśniono, jak usunąć określone znaki wiodące/końcowe z ciągu.
Składnia
TRIM()
funkcja może być używana w następujący sposób:
TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str)
Lub tak:
TRIM([remstr FROM] str)
W praktyce oznacza to, że możesz usunąć spację lub dowolny inny określony znak z początku łańcucha, z jego końca lub z obu stron łańcucha.
Możesz więc określić BOTH
aby przyciąć znaki z obu końców ciągu, lub możesz użyć LEADING
aby przyciąć tylko określone znaki na początku ciągu. Podobnie możesz użyć TRAILING
aby usunąć tylko te znaki z końca ciągu.
remstr
część to miejsce, w którym określasz znak do przycięcia, a str
część to rzeczywisty ciąg, który wymaga przycięcia.
Przykład
Oto podstawowy przykład usuwania danego znaku z obu stron ciągu:
SELECT TRIM('=' FROM '=FRESH COOKIES!=') AS Trimmed;
Wynik:
+----------------+ | Trimmed | +----------------+ | FRESH COOKIES! | +----------------+
Tak więc łańcuch jest pozbawiony określonego znaku po obu stronach łańcucha.
Wiele instancji określonej postaci
Usunie wiele wystąpień danego znaku (o ile znajduje się w ciągłej grupie tych samych znaków wiodących/końcowych):
SELECT TRIM('=' FROM '====FRESH COOKIES!====') AS Trimmed;
Wynik:
+----------------+ | Trimmed | +----------------+ | FRESH COOKIES! | +----------------+
Usuń tylko główne znaki
Możesz określić, że przycinane są tylko znaki wiodące. Aby to zrobić, użyj LEADING
specyfikator:
SELECT TRIM(LEADING '=' FROM '====FRESH COOKIES!====') AS Trimmed;
Wynik:
+--------------------+ | Trimmed | +--------------------+ | FRESH COOKIES!==== | +--------------------+
Usuń tylko znaki końcowe
Możesz określić, że przycinane będą tylko znaki końcowe. Aby to zrobić, użyj TRAILING
specyfikator:
SELECT TRIM(TRAILING '=' FROM '====FRESH COOKIES!====') AS Trimmed;
Wynik:
+--------------------+ | Trimmed | +--------------------+ | ====FRESH COOKIES! | +--------------------+
Usuń serię znaków
Możesz także określić, że przycinana jest tylko określona seria znaków:
SELECT TRIM(BOTH '!====' FROM '====FRESH COOKIES!====') AS Trimmed;
Wynik:
+-------------------+ | Trimmed | +-------------------+ | ====FRESH COOKIES | +-------------------+
Możesz zauważyć, że użyłem BOTH
słowo kluczowe w tym przykładzie. Jest to opcjonalne. To samo stwierdzenie można by przepisać bez tego:
SELECT TRIM('!====' FROM '====FRESH COOKIES!====') AS Trimmed;
Wynik:
+-------------------+ | Trimmed | +-------------------+ | ====FRESH COOKIES | +-------------------+
Inne zastosowania TRIM()
Możesz także użyć TRIM()
aby usunąć końcowe spacje, usunąć początkowe spacje lub usunąć zarówno początkowe, jak i końcowe białe znaki.