TRANSLATE (Azure Stream Analytics)
Возвращает строку, предоставленную в качестве первого аргумента, после преобразования символов, указанных во втором аргументе, в конечный набор символов, указанный в третьем аргументе.
TRANSLATE
Поведение функции аналогично использованию нескольких REPLACE
функций.
Синтаксис
TRANSLATE ( expression, replaced_characters, translations)
Примечание
Индекс/позиция для функции TRANSLATE основана на 1.
Аргументы
expression
Это символьное выражение или столбец типа nvarchar(max).
replaced_characters
Это символьное выражение или столбец типа nvarchar(max). Он содержит список символов, которые необходимо заменить.
translations
Символьное выражение или столбец типа nvarchar(max) той же длины, что и replaced_characters. Он содержит символы замены.
Типы возвращаемых данных
nvarchar(max)
Комментарии
TRANSLATE
возвращает ошибку, если выражения characters и translations имеют разную длину.
TRANSLATE
возвращает значение NULL, если любой из аргументов имеет значение NULL.
Поведение функции TRANSLATE
аналогично использованию нескольких функций REPLACE.
TRANSLATE
однако не заменяет отдельный символ в inputString более одного раза. Одно значение в параметре characters может заменить несколько символов в выражении. Это не похоже на поведение нескольких функций REPLACE
, так как каждый вызов функции будет заменять все соответствующие символы, даже если они были заменены предыдущим вызовом вложенной функции REPLACE
.
Примеры
Замена квадратных и фигурных скобок обычными
SELECT
x,
TRANSLATE(x, '[]{}', '()()') AS translatedX
FROM Input
x | translatedX |
---|---|
2*[3+4]/{7-2} | 2*(3+4)/(7-2) |
Преобразование точек GeoJSON в WKT
SELECT
xPoint,
TRANSLATE(xPoint, '[,]', '( )') xPoint2Coordinates,
xCoordinates,
TRANSLATE(xPoint, '[,]', '( )') xCoordinates2Point
FROM Input
xPoint | xPoint2Coordinates | xCoordinates | xCoordinates2Point |
---|---|---|---|
(137.4 72.3) | [137.4,72.3] | [137.4,72.3] | (137.4 72.3) |