Dela via


Table.Buffer

Syntax

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

Om

Buffrar en tabell i minnet och isolerar den från externa ändringar under utvärderingen. Buffring är ytlig. Det tvingar utvärderingen av skalära cellvärden, men lämnar icke-skalära värden (poster, listor, tabeller och så vidare) som de är.

Observera att användningen av den här funktionen kanske eller kanske inte gör att dina frågor körs snabbare. I vissa fall kan det göra att dina frågor körs långsammare på grund av den extra kostnaden för att läsa alla data och lagra dem i minnet, samt det faktum att buffring förhindrar nedströmsdelegering. Om data inte behöver bufferas, men du bara vill förhindra nedströmsdelegering, använder du Table.StopFolding i stället.

Exempel 1

Läs in alla rader i en SQL-tabell i minnet, så att underordnade åtgärder inte längre kan köra frågor mot SQL-servern.

Användning

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

Output

table