Syntax
Table.Buffer(table as table, optional options as nullable record) as table
About
在内存中缓冲表,在评估期间将其与外部更改隔离。 缓冲为浅层。 它强制计算任何标量单元格值,但保留非标量值(记录、列表、表等)as-is。
-
table:内存中要缓冲的表。 -
options:[可选] 可以使用以下选项记录值:-
BufferMode:描述要执行的缓冲类型的缓冲区模式。 此选项可以是 BufferMode.Eager 或 BufferMode.Delayed。
-
使用此函数可能会或可能不会加快查询运行速度。 在某些情况下,由于读取所有数据并将其存储在内存中,以及缓冲会阻止下游折叠,因此查询运行速度可能会变慢。 如果数据不需要缓冲,但只想防止下游折叠,请改用 Table.StopFolding 。
示例 1
将 SQL 表的所有行加载到内存中,以便任何下游作都无法再查询 SQL Server。
用法
let
Source = Sql.Database("SomeSQLServer", "MyDb"),
MyTable = Source{[Item="MyTable"]}[Data],
BufferMyTable = Table.Buffer(MyTable)
in
BufferMyTable
输出
table