適用於:
Azure Data Factory
Azure Synapse Analytics
秘訣
試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告的所有項目。 了解如何免費開始新的試用!
數據流可在 Azure Data Factory 管線和 Azure Synapse Analytics 管線中使用。 本文適用於映射資料流。 如果您不熟悉轉換,請參閱 使用對應數據流轉換數據的簡介文章。
本文詳細說明 Azure Data Factory 與 Azure Synapse Analytics 在繪製資料流中的視窗功能。
視窗函式清單
以下函式僅在視窗轉換中提供。
| 窗口函數 | 任務 |
|---|---|
| cumeDist | 計算某一數值相對於分區內所有數值的位置。 依照分割區的排序,將目前資料列 (含此列) 之前的列數,除以視窗分割區中的總列數,即為結果。 排序中的任何相等值都會評估為相同的位置。 |
| denseRank | 在視窗的 order by 子句中指定的值群組中,計算某個值的順位。 依照分割區的排序,將目前資料列 (含此列) 之前的列數加一,即為結果。 這些數值不會在序列中產生空隙。 這個 denseRank 函式即使資料未排序也能運作,並尋找值的變化。 |
| 延遲 | 取得在當前列之前n列處評估的第一個參數的值。 第二個參數是回查的列數,預設值為 1。 若列數較少,則會回傳 值 null ,除非指定預設值。 |
| 鉛 | 取得第一個參數對目前資料列之後的 n 個資料列評估的值。 第二個參數是要向前看的列數,預設值為 1。 若列數較少,則會回傳 值 null ,除非指定預設值。 |
| nTile | 將每個視窗分割區中的資料列分成 n 個貯體,範圍從 1 到 n。 貯體值最多相差 1。 如果分割區中的資料列數目無法平均分成貯體數,其餘值將會逐一均分給各個貯體,從第一個貯體開始。 在計算 NTile、四分位數、十分位數和其他常見的摘要統計資料時,tertiles 函式很有用。該函式在初始化時計算兩個變數。 一般貯體的大小會新增一個額外的資料列。 這兩個變數都是以目前分割區的大小為基礎。 在計算過程中,函式會追蹤目前的列號、目前的分桶號,以及分桶改變的列號( bucketThreshold)。 當目前資料列數目達到貯體閾值時,貯體的值會增加一。 門檻會依桶大小增加(如果目前桶有填充,則多加一個)。 |
| 排名 | 在視窗的 order by 子句中指定的值群組中,計算某個值的順位。 依照分割區的排序,將目前資料列 (含此列) 之前的列數加一,即為結果。 這些數值會在序列中產生空缺。 這個 rank 函式即使資料未排序也能運作,並尋找值的變化。 |
| rowNumber | 為視窗中的資料列指派循序的資料列編號,從 1 開始。 |