Sdílet prostřednictvím


Table.Buffer

Syntaxe

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

O uživateli

Uloží tabulku do vyrovnávací paměti a během vyhodnocení ji izoluje od externích změn. Vyrovnávací paměť je mělká. Vynutí vyhodnocení všech skalárních hodnot buněk, ale ponechá nes skalární hodnoty (záznamy, seznamy, tabulky atd.), jak je.

Mějte na paměti, že použití této funkce může nebo nemusí urychlit spouštění dotazů. V některých případech může vaše dotazy běžet pomaleji kvůli přidaným nákladům na čtení všech dat a jejich ukládání do paměti a skutečnosti, že ukládání do vyrovnávací paměti brání posouvání podřízených dat do vyrovnávací paměti. Pokud data nemusí být uložená do vyrovnávací paměti, ale chcete jen zabránit posouvání podřízených dat, použijte místo toho Table.StopFolding .

Příklad 1

Načtěte všechny řádky tabulky SQL do paměti, takže všechny podřízené operace už nebudou moct dotazovat sql server.

Využití

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

Výstup

table