TRANSLATE (Azure 串流分析)
將第二個引數中指定的部分字元轉譯為第三個變數中指定的一組目的地字元之後,傳回提供作為第一個引數的字串。
函式的行為 TRANSLATE
類似于使用多個 REPLACE
函式。
Syntax
TRANSLATE ( expression, replaced_characters, translations)
注意
TRANSLATE 函式的索引/位置是以 1 為基礎。
引數
expression
是字元運算式或 nvarchar(max) 類型的資料行。
replaced_characters
是字元運算式或 nvarchar(max) 類型的資料行。 其中包含要取代的字元清單。
translations
這是 Nvarchar 類型的字元運算式或資料行,其長度與 replaced_characters 相同, (max) 。 其中包含取代字元。
傳回型別
nvarchar(max)
備註
如果 characters 和 translations 運算式的長度不同,則 TRANSLATE
函數會傳回錯誤。 如果任何引數是 NULL,TRANSLATE
會傳回 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) |