Del via


Table.Buffer

Syntaks

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

Omtrent

Gemmer en tabel i buffer i hukommelsen og isolerer den fra eksterne ændringer under evalueringen. Bufferlagring er lavvandet. Den gennemtvinger evalueringen af skalarcelleværdier, men lader ikke-skalarværdier (poster, lister, tabeller osv.) as-is.

  • table: Den tabel, der skal bufferlagres i hukommelsen.
  • options: [Valgfri] Følgende postværdier kan bruges:

Brug af denne funktion får måske eller måske ikke dine forespørgsler til at køre hurtigere. I nogle tilfælde kan det få dine forespørgsler til at køre langsommere på grund af de ekstra omkostninger ved at læse alle dataene og gemme dem i hukommelsen samt det faktum, at bufferlagring forhindrer downstream-foldning. Hvis dataene ikke behøver at blive bufferlagret, men du blot vil forhindre downstream-foldning, skal du i stedet bruge Table.StopFolding.

Eksempel 1

Indlæs alle rækkerne i en SQL-tabel i hukommelsen, så alle downstream-handlinger ikke længere kan forespørge SQL-serveren.

brug

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

output

table