Table.Buffer
Sintaksis
Table.Buffer(table as table, optional options as nullable record) as table
Tentang
Membuffer sebuah tabel di dalam memori, mengisolasinya dari perubahan eksternal selama evaluasi. Buffering tidak mendalam. Ini memaksa evaluasi nilai sel skalar apa pun, tetapi meninggalkan nilai non-skalar (rekaman, daftar, tabel, dan sebagainya) as-is.
-
table
: Tabel untuk buffer dalam memori. -
options
: [Opsional] Nilai rekaman opsi berikut dapat digunakan:-
BufferMode
: Mode buffer yang menjelaskan jenis buffering yang akan dilakukan. Opsi ini dapat berupa BufferMode.Eager atau BufferMode.Delayed.
-
Menggunakan fungsi ini mungkin atau mungkin tidak membuat kueri Anda berjalan lebih cepat. Dalam beberapa kasus, kueri Anda dapat berjalan lebih lambat karena adanya biaya tambahan untuk membaca semua data dan menyimpannya ke dalam memori, serta karena buffering yang mencegah proses penyusunan lebih lanjut di tahap berikutnya. Jika data tidak perlu di-buffer tetapi Anda hanya ingin mencegah lipatan hilir, gunakan Table.StopFolding sebagai gantinya.
Contoh 1
Muat semua baris tabel SQL ke dalam memori, sehingga setiap operasi hilir tidak lagi dapat mengkueri server SQL.
Penggunaan
let
Source = Sql.Database("SomeSQLServer", "MyDb"),
MyTable = Source{[Item="MyTable"]}[Data],
BufferMyTable = Table.Buffer(MyTable)
in
BufferMyTable
Keluaran
table