Podsumowanie: W tym poradniku dowiesz się, jak używać funkcji SQL Server TRANSLATE()
do zamiany kilku pojedynczych znaków, tłumaczenia jeden do jednego w jednej operacji.
Przegląd funkcjiSQL Server TRANSLATE()
Funkcja TRANSLATE()
zwraca łańcuch znaków, w którym znak określony w drugim argumencie jest zastępowany pasującymi znakami z trzeciego argumentu.
Poniżej zilustrowano składnię funkcji TRANSLATE()
:
Code language: SQL (Structured Query Language) (sql)
W tej składni:
-
input_string
to łańcuch znaków do przeszukania. Może to być ciąg literalny, wyrażenie znakowe lub kolumna. -
from_characters
to wyrażenie łańcuchowe zawierające znaki, które powinny zostać zastąpione. -
to_characters
to wyrażenie łańcuchowe zawierające znaki zastępujące.
Jeśli długości from_characters
i to_characters
są różne, funkcja TRANSLATE()
zwróci błąd.
Jeśli dowolny argument jest NULL, funkcja TRANSLATE()
zwróci NULL.
SerwerSQL Przykłady funkcji TRANSLATE()
Następujący przykład wykorzystuje funkcję TRANSLATE()
do zastąpienia nawiasów kwadratowych nawiasami:
Code language: SQL (Structured Query Language) (sql)
Oto dane wyjściowe:
Oświadczenie jest równoważne dwukrotnemu wywołaniu funkcji REPLACE()
:
Code language: SQL (Structured Query Language) (sql)
TRANSLATE() vs. REPLACE()
Zachowanie funkcji TRANSLATE()
jest podobne do wielokrotnego wywoływania funkcji REPLACE()
.
Jednakże funkcja TRANSLATE()
nie zastępuje wszystkich wystąpień znaku nowym. Na tym polega różnica między funkcją TRANSLATE()
a wywołaniem wielu funkcji REPLACE()
, każde wywołanie funkcji REPLACE()
zastąpiłoby wszystkie odpowiednie znaki.
W tym samouczku dowiedziałeś się, jak używać funkcji SQL Server TRANSLATE()
do zastępowania kilku jednoznakowych translacji jeden do jednego w jednej operacji.
.