📜  SQL Server 中的 TRANSLATE()函数

📅  最后修改于: 2022-05-13 01:54:22.832000             🧑  作者: Mango

SQL Server 中的 TRANSLATE()函数

翻译()函数:
SQL Server 中的该函数用于返回该函数第一个参数中所述字符串的翻译字符串,当上述函数的字符参数中所述的字符转换为最后一个参数中所述的字符时,即翻译。

特征 :

  • 当字符参数中给出的字符被转换为最后一个参数中给出的字符即翻译时,该函数用于查找第一个参数中所述字符串的修改后的字符串。
  • 此函数接受字符串、 字符和 translations 作为参数。
  • 此函数可以完全翻译字符串,也可以部分翻译字符串。
  • 如果指定的字符和翻译的长度不同,此函数可能会返回错误。

句法 :

TRANSLATE(string, characters, translations)

范围 :
此方法接受三个参数,如下所示:

  • 字符串 :要翻译的指定输入字符串。
  • 字符 :必须替换的指定字符。
  • 翻译:指定的新字符。

回报:
当字符参数中给出的字符被解释为最后一个参数中所述的字符时,它返回此函数的第一个参数中所述字符串的修改后的字符串,即翻译。

示例-1:
从指定的字符串、字符和翻译中获取字符串。

SELECT TRANSLATE('Geek', 'Geek', 'geek');

输出 :

geek

示例 2 :
使用带有变量的 TRANSLATE()函数并将翻译后的字符串作为输出。

DECLARE @str VARCHAR(2);
SET @str = 'gf';
SELECT TRANSLATE(@str, 'gf', 'cs');

输出 :

cs

示例 3 :
使用带有三个变量的 TRANSLATE()函数并将翻译后的字符串作为输出。

DECLARE @str VARCHAR(3);
DECLARE @chars VARCHAR(3);
DECLARE @newchar VARCHAR(3);
SET @str = 'abc';
SET @chars = 'ab';
SET @newchar = 'ed';
SELECT TRANSLATE(@str, @chars, @newchar);

输出 :

edc

示例 4:
当这个函数的字符参数中给出的字符被解释为最后一个参数中给出的字符时,获取第一个参数中所述字符串的翻译字符串,即翻译。

SELECT TRANSLATE('x*[y+z]/[x-y]', '[][]', '()()');

输出 :

x*(y+z)/(x-y)

应用 :
当字符参数中给出的字符被解释为最后一个参数中给出的字符时,该函数用于返回第一个参数中所述字符串的翻译后的字符串,即翻译。