Share via


Table.Buffer

語法

Table.Buffer(table as table, optional options as nullable record) as table

關於

在記憶體中緩衝處理資料表,使其在評估期間與外部變更隔離。 緩衝處理是淺層的。 其會強制評估任何數值類值,但將非數值類值 (記錄、清單、資料表等) 保留原狀。

請注意,使用此函式可能會或可能不會讓您的查詢執行得更快。 在某些情況下,由於讀取所有資料並將其儲存在記憶體中,以及緩衝防止下游摺疊,因此查詢的執行速度可能會變慢。 如果資料不需要緩衝處理,但您只想避免下游摺疊,請改用 Table.StopFolding

範例 1

將 SQL 資料表的所有資料列載入記憶體,讓所有下游作業都無法再查詢 SQL Server。

使用方式

let
    Source = Sql.Database("SomeSQLServer", "MyDb"),
    MyTable = Source{[Item="MyTable"]}[Data],
    BufferMyTable = Table.Buffer(dbo_MyTable)
in
    BufferMyTable

輸出

table