對應資料流中的運算式函數
適用於:Azure Data Factory Azure Synapse Analytics
提示
試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告的所有項目。 了解如何免費開始新的試用!
Azure Data Factory 和 Azure Synapse Pipelines 中均可使用資料流。 本文適用於對應資料流。 如果您不熟悉轉換作業,請參閱簡介文章使用對應資料流轉換資料。
下列文章提供對應資料流中 Azure Data Factory 和 Azure Synapse Analytics 所支援運算式函數的詳細資料。
運算式函數清單
在 Data Factory 和 Synapse 管線中,使用對應資料流功能的運算式語言來設定資料轉換。
運算式函數 | Task |
---|---|
abs | 數字的絕對值。 |
acos | 計算反餘弦值。 |
add | 新增一對字串或數字。 將日期新增至天數。 將持續時間新增至時間戳記。 對某個陣列附加類似類型的另一個陣列。 相當於 + 運算子。 |
and | 邏輯 AND 運算子。 相當於 &&。 |
asin | 計算反正弦值。 |
assertErrorMessages | 傳回所有判斷提示訊息的對應。 |
atan | 計算反正切值。 |
atan2 | 傳回平面的正 X 軸與座標指定點之間的角度 (以弧度為單位)。 |
between | 檢查第一個值是否內含在兩個其他值之間。 可以比較數值、字串和日期時間值 |
bitwiseAnd | 整數類型的位元 And 運算子。 相當於 & 運算子。 |
bitwiseOr | 整數類型的位元 Or 運算子。 相當於 | 運算子。 |
bitwiseXor | 整數類型的位元 Or 運算子。 相當於 | 運算子。 |
blake2b | 以指定的位元長度為不同基本資料類型的一組資料行計算 Blake2 摘要。 位元長度只能是 8 到 512 之間的 8 倍數。 這可以用來計算資料列的指紋。 |
blake2bBinary | 以指定的位元長度為不同基本資料類型的一組資料行計算 Blake2 摘要,值只能是 8 & 512 之間 8 的倍數。 這可以用來計算資料列的指紋 |
case | 根據替代條件套用一個值或另一個值。 如果輸入偶數個項目,則最後一個條件的另一個值預設為 NULL。 |
cbrt | 計算數字的立方根。 |
ceil | 傳回不小於某數字的最小整數。 |
coalesce | 從一組輸入傳回第一個非 null 值。 所有輸入應該是相同的類型。 |
columnNames | 取得資料流的所有輸出資料行名稱。 您可以傳遞選擇性資料流名稱做為第一個引數和選擇性第二個引數,以只傳回結構描述漂移資料行。 |
columns | 取得資料流的所有輸出資料行值。 您可以傳遞選擇性資料流名稱作為第二個引數。 |
compare | 比較相同類型的兩個值。 如果 value1 < value2,則會傳回負整數,如果 value1 == value2,則會傳回 0,如果 value1 > value2,則會傳回正值。 |
concat | 將任意數目的字串串連在一起。 相當於 + 運算子加上字串。 |
concatWS | 以分隔符號將任意數目的字串串連在一起。 第一個參數為分隔符號。 |
cos | 計算餘弦值。 |
cosh | 計算某值的雙曲餘弦值。 |
crc32 | 以指定的位元長度為不同基本資料類型的一組資料行計算 CRC32 雜湊。 位元長度必須是 0 (256)、224、256、384 或 512 的值。 這可以用來計算資料列的指紋。 |
degrees | 將弧度轉換為度。 |
divide | 將數字配對相除。 相當於 / 運算子。 |
dropLeft | 移除字串左邊任意數目的字元。 如果要求的置放超過字串的長度,則會傳回空字串。 |
dropRight | 移除字串右邊任意數目的字元。 如果要求的置放超過字串的長度,則會傳回空字串。 |
endsWith | 檢查字串是否以提供的字串結尾。 |
equals | 「等於」比較運算子。 相當於 == 運算子。 |
equalsIgnoreCase | 忽略大小寫的「等於」比較運算子。 相當於 <=> 運算子。 |
escape | 根據格式逸出字串。 可接受的格式常值是「json」、「xml」、「ecmascript」、「html」、「java」。 |
expr | 從字串產生運算式。 這相當於以非常值形式撰寫運算式,而且可用來將參數當做字串表示法傳遞。 |
factorial | 計算數字的階乘。 |
false | 一律傳回 false 值。 如果有名為「false」的資料行,則使用函數 syntax(false()) 。 |
floor | 傳回不大於某數字的最大整數。 |
fromBase64 | 解碼指定的 base64 編碼字串。 |
greater | 「大於」比較運算子。 相當於 > 運算子。 |
greaterOrEqual | 「大於或等於」比較運算子。 相當於 >= 運算子。 |
greatest | 傳回值清單中的最大值作為輸入 (跳過 Null 值)。 如果所有輸入皆為 Null,則傳回 Null。 |
hasColumn | 依名稱檢查資料流中的資料行值。 您可以傳遞選擇性資料流名稱作為第二個引數。 在設計階段已知的資料行名稱,應該只依據其名稱來處理。 不支援計算的輸入,但您可使用參數替換。 |
hasError | 檢查具有所提供識別碼的判斷提示是否標示為錯誤。 |
iif | 根據條件套用一個值或另一個值。 如果未指定其他值,則會將其視為 NULL。 這兩個值必須相容 (數字、字串...)。 |
iifNull | 假設有兩個或多個輸入,則會傳回第一個非 Null 項目。 此函數相當於 coalesce。 |
initCap | 將每個單字的第一個字母轉換成大寫。 多個單字會以空格分隔。 |
instr | 尋找子字串在字串中的位置 (從 1 開始)。 如果找不到,則傳回 0。 |
isDelete | 檢查資料列是否有刪除標示。 對於取用多個輸入資料流的轉換,您可傳遞資料流 (從 1 開始) 的索引。 資料流索引應為 1 或 2,且預設值為 1。 |
isError | 檢查資料列是否標示為錯誤。 對於取用多個輸入資料流的轉換,您可傳遞資料流 (從 1 開始) 的索引。 資料流索引應為 1 或 2,且預設值為 1。 |
isIgnore | 檢查資料列是否標示為要忽略。 對於取用多個輸入資料流的轉換,您可傳遞資料流 (從 1 開始) 的索引。 資料流索引應為 1 或 2,且預設值為 1。 |
isInsert | 檢查資料列是否有插入標示。 對於取用多個輸入資料流的轉換,您可傳遞資料流 (從 1 開始) 的索引。 資料流索引應為 1 或 2,且預設值為 1。 |
isMatch | 檢查在查閱時是否比對資料列。 對於取用多個輸入資料流的轉換,您可傳遞資料流 (從 1 開始) 的索引。 資料流索引應為 1 或 2,且預設值為 1。 |
isNull | 檢查值是否為 NULL。 |
isUpdate | 檢查資料列是否有更新標示。 對於取用多個輸入資料流的轉換,您可傳遞資料流 (從 1 開始) 的索引。 資料流索引應為 1 或 2,且預設值為 1。 |
isUpsert | 檢查資料列是否有插入標示。 對於取用多個輸入資料流的轉換,您可傳遞資料流 (從 1 開始) 的索引。 資料流索引應為 1 或 2,且預設值為 1。 |
jaroWinkler | 取得兩個字串之間的 JaroWinkler 距離。 |
least | 「小於或等於」比較運算子。 相當於 <= 運算子。 |
left | 從索引 1 處開始擷取含特定字元數的子字串。 相當於 SUBSTRING(str, 1, n)。 |
length | 傳回字串的長度。 |
lesser | 「小於」比較運算子。 相當於 < 運算子。 |
lesserOrEqual | 「小於或等於」比較運算子。 相當於 <= 運算子。 |
levenshtein | 取得兩個字串之間的 levenshtein 距離。 |
like | 此模式是字面上相符的字串。 下列特殊符號則屬例外: _ 符合輸入中的任何一個字元 (類似於在 posix 規則運算式中) |
locate | 尋找子字串在字串中從特定位置起算的位置 (從 1 開始)。 如果省略位置,則視為字串的開頭。 如果找不到,則傳回 0。 |
log | 計算對數值。 可以提供選擇性的底數,否則使用歐拉數。 |
log10 | 計算以 10 為底數的對數值。 |
lower | 將字串變成小寫。 |
lpad | 從左側為字串填補提供的填補內容,直到達到特定長度。 如果字串大於或等於該長度,則會修剪為該長度。 |
ltrim | 從左側修剪開頭字元的字串。 若未指定第二個參數,則會修剪空白字元。 否則會修剪第二個參數中指定的任何字元。 |
md5 | 為不同基本資料類型的一組資料行計算 MD5 摘要,並傳回 32 個字元的十六進位字串。 這可以用來計算資料列的指紋。 |
minus | 減去數字。 從日期中減去天數。 從時間戳記減去持續時間。 減去兩個時間戳記來取得差異 (以毫秒為單位)。 相當於 - 運算子。 |
mod | 數字配對的模數。 相當於 % 運算子。 |
multiply | 將數字配對相乘。 相當於 * 運算子。 |
negate | 將數字轉換為負數。 將正數轉換為負數,或反向轉換。 |
nextSequence | 傳回下一個唯一序列。 數字在分割區內才會連續,且具有 partitionId 前置詞。 |
normalize | 將字串值正規化,以區分重音的 unicode 字元。 |
not | 邏輯負運算子。 |
notEquals | 「不等於」比較運算子。 相當於 != 運算子。 |
null | 傳回 NULL 值。 如果有名為「null」的資料行,則使用函數 syntax(null()) 。 任何使用此函數的作業都將導致 NULL。 |
or | 邏輯 OR 運算子。 相當於 ||。 |
pMod | 數字配對的正模數。 |
partitionId | 傳回輸入資料列所在的目前分割區識別碼。 |
power | 以一數為底數、另一數為乘冪求值。 |
radians | 將度數轉換為弧度 |
random | 傳回資料分割內已知選用種子的亂數。 種子應該是固定值,並搭配使用 partitionId 以產生隨機值 |
regexExtract | 擷取指定規則運算式模式的相符子字串。 最後一個參數會識別比對群組,如果省略則預設為 1。 使用 `<regex>` (反引號) 比對字串 (不逸出)。 |
regexMatch | 檢查字串是否符合指定的規則運算式模式。 使用 `<regex>` (反引號) 比對字串 (不逸出)。 |
regexReplace | 將指定字串中出現的某個規則運算式模式全部取代為另一個 substring。使用 `<regex>` (反引號) 比對字串 (不逸出)。 |
regexSplit | 根據分隔符號和規則運算式分割字串,並傳回字串陣列。 |
replace | 將指定字串中出現的某個子字串全部取代為另一個子字串。 如果省略最後一個參數,則預設為空字串。 |
reverse | 反轉字串。 |
right | 從右側擷取含特定字元數的子字串。 相當於 SUBSTRING(str, LENGTH(str) - n, n)。 |
rlike | 檢查字串是否符合指定的規則運算式模式。 |
round | 以指定的選擇性小數位數和選擇性的捨入模式將數字捨入進位。 如果省略小數位數,則預設為 0。 如果省略捨入模式,則預設為 ROUND_HALF_UP(5)。 四捨五入的值包括 |
rpad | 從右側為字串填補提供的填補內容,直到達到特定長度。 如果字串大於或等於該長度,則會修剪為該長度。 |
rtrim | 從右側修剪後置字元的字串。 若未指定第二個參數,則會修剪空白字元。 否則會修剪第二個參數中指定的任何字元。 |
sha1 | 為不同基本資料類型的一組資料行計算 SHA-1 摘要,並傳回 40 個字元的十六進位字串。 這可以用來計算資料列的指紋。 |
sha2 | 以指定的位元長度為不同基本資料類型的一組資料行計算 SHA-2 摘要,值只能是 0(256)、224、256、384、512。 這可以用來計算資料列的指紋。 |
sin | 計算正弦值。 |
sinh | 計算雙曲正弦值。 |
soundex | 取得字串的 soundex 代碼。 |
split | 根據分隔符號分割字串,並傳回字串陣列。 |
sqrt | 計算數字的平方根。 |
startsWith | 檢查字串是否以提供的字串開頭。 |
substring | 從某個位置擷取特定長度的子字串。 位置從 1 開始。 如果省略長度,則預設為字串的結尾處。 |
substringIndex | 在分隔符號的 count 出現之前擷取子字串。 如果 count 為正數,則會傳回最後一個分隔符號左邊的所有內容 (從左計數)。 如果 count 為負數,則會傳回最後一個分隔符號右邊的所有內容 (從右計數)。 |
tan | 計算正切值。 |
tanh | 計算雙曲正切值。 |
translate | 將字串中的一組字元取代為另一組字元。 字元的取代是 1 對 1。 |
修剪 | 修剪開頭和結尾字元的字串。 若未指定第二個參數,則會修剪空白字元。 否則會修剪第二個參數中指定的任何字元。 |
true | 一律傳回 true 值。 如果有名為「true」的資料行,則使用函數 syntax(true()) 。 |
typeMatch | 比對資料行的類型。 只能在模式運算式中使用。number 會比對出短數值、整數、長數值、雙精確度、浮點數或小數,integral 會比對出短數值、整數、長數值,fractional 會比對出雙精準數、浮點數、小數,datetime 會比對出日期或時間戳記類型。 |
unescape | 根據格式取消逸出字串。 可接受的格式常值是「json」、「xml」、「ecmascript」、「html」、「java」。 |
upper | 將字串變成大寫。 |
uuid | 傳回產生的 UUID。 |
xor | 邏輯 XOR 運算子。 相當於 ^ 運算子。 |
相關內容
- 所有彙總函數的清單。
- 所有陣列函數的清單。
- 所有快取查詢函數的清單。
- 所有轉換函數的清單。
- 所有日期和時間函數的清單。
- 所有對應函數的清單。
- 所有中繼函數的清單。
- 所有視窗函數的清單。
- 所有資料轉換運算式的使用方式詳細資料。
- 了解如何使用運算式產生器。