menu
languageBahasa Indonesia
save_alt Download

Pivot Tables

Buat pivot table dari hasil query, seleksi, atau tabel, lalu ekspor ke Excel, PDF, Markdown, CSV, HTML, atau gambar.

oleh rathboma Plugin komunitas

Readme

Teks ini ditulis oleh pihak ketiga dan diterjemahkan secara otomatis. Baca versi asli dalam bahasa Inggris

Ubah hasil query, seleksi grid, atau tabel apa pun di Beekeeper Studio menjadi pivot table, lalu bagikan sebagai workbook Excel, PDF, gambar, Markdown, CSV, HTML, atau JSON.

Membuat pivot table: menyeret field ke baris, kolom, dan nilai, mengelompokkan tanggal per tahun, menambahkan subtotal, heatmap, dan filter, lalu mengekspornya

Direkam di dev harness plugin dengan 5.000 contoh pesanan. Sedikit dipercepat.

Fitur sekilas

   
Drag-and-drop Rows, Columns, Values, dan Filters, seperti pivot table di spreadsheet
11 agregasi Count, count distinct, sum, average, min, max, median, std deviation, variance, first, last
% dari total Tampilkan nilai apa pun sebagai persentase dari grand total, total baris, atau total kolom
Pengelompokan tanggal Tahun, kuartal, bulan, minggu, hari, jam, bulan dalam tahun, hari dalam minggu
Filter dan pengurutan Pilih nilai dengan pencarian dan jumlah; urutkan A→Z, Z→A, atau berdasarkan nilai
Tata letak Total, subtotal, nilai di kolom atau baris, desimal tetap, heatmap
8 format ekspor Excel, Excel + data sumber, PDF, PNG, Markdown, CSV, HTML, JSON
3 cara menyalin Sel spreadsheet, tabel Markdown, gambar
Sumber data apa pun Seleksi grid, query, tabel (dengan filter tab), hingga 100.000 baris
Menyatu dengan aplikasi Mengikuti tema terang atau gelap, menyimpan tata letak tiap tab, berjalan lokal tanpa panggilan jaringan

Membuat pivot

Setiap kolom data muncul di daftar Fields. Seret field ke sebuah zona, atau klik lalu pilih tujuannya:

  • Rows dan Columns mengelompokkan data. Tumpuk beberapa field untuk membuat grup bertingkat, dan seret chip untuk mengubah urutannya. Swap menukar baris dan kolom.
  • Values adalah angka di dalam sel. Field yang sama bisa ditambahkan lebih dari sekali, misalnya untuk menampilkan sum dan average-nya berdampingan. Tanpa values, pivot menghitung jumlah baris.
  • Filters mempersempit data tanpa menambah baris atau kolom.

Seret chip kembali ke daftar field untuk menghapusnya. Klik chip mana pun untuk melihat opsinya.

Pivot baru dimulai dari tata letak yang disarankan:

  • Rows: kolom bertipe kategori, seperti status, plan, atau country.
  • Columns: tanggal utama, dikelompokkan per hari, bulan, kuartal, atau tahun sesuai rentang data. Tanggal ini masuk ke Rows jika tidak ada kolom kategori.
  • Values: sum dari kolom bertipe jumlah, seperti total, amount, atau quantity, atau jumlah baris jika tidak ada.

Id, kolom yang sebagian besar kosong, teks bebas, dan timestamp seperti updated_at tidak digunakan. Reset layout di bawah Options mengembalikan ke tata letak yang disarankan.

Meringkas nilai

Klik chip value untuk mengubah apa yang ditampilkannya:

Ringkas dengan Berlaku untuk
Count, count distinct Kolom apa pun, atau baris jika tidak ada field yang dipilih
Sum, average, median, standard deviation, variance Angka, termasuk teks numerik
Minimum, maximum Angka, tanggal, dan teks
First, last Kolom apa pun

Show as mengubah nilai menjadi persentase dari grand total, total barisnya, atau total kolomnya.

Pengelompokan, filter, dan pengurutan

Klik chip row, column, atau filter untuk:

  • Group dates by tahun, kuartal, bulan, minggu ISO, hari, jam, bulan dalam tahun, atau hari dalam minggu. Tanggal dikelompokkan sesuai yang tertulis di database, jadi zona waktu tidak menggesernya.
  • Show values: daftar centang setiap nilai beserta jumlah barisnya, kotak pencarian, All / None, dan “only” untuk menyisakan satu nilai saja. Chip yang difilter akan disorot.
  • Sort mengurutkan label A→Z atau Z→A (angka diurutkan secara numerik, null di urutan terakhir), atau berdasarkan besar value pertama, dari terbesar atau terkecil.

Opsi tata letak

Di bawah Options pada sidebar:

  • Totals column dan totals row untuk grand total, serta subtotals untuk setiap grup saat baris atau kolom bertingkat.
  • Values in kolom atau baris, untuk pivot dengan beberapa value.
  • Decimals: otomatis (bilangan bulat tetap bulat, nilai lain 2 desimal, persentase 1) atau tetap 0 hingga 4 desimal.
  • Heatmap memberi gradasi warna pada setiap nilai dari yang terkecil hingga terbesar.

Judul di bagian atas menjadi nama tab dan muncul di hasil ekspor.

Ekspor dan berbagi

Export menyimpan file. Hasil ekspor selalu berisi seluruh pivot, meskipun grid di layar hanya menampilkan baris-baris awal dari pivot yang sangat besar.

Format Yang Anda dapatkan
Excel Header yang digabung, format angka dan persentase, total tebal, serta baris header dan kolom label yang dibekukan
Excel + data sumber Workbook yang sama dengan sheet kedua berisi baris yang dimuat, siap di-pivot ulang di Excel
PDF Landscape jika lebar. Diperkecil agar muat bila memungkinkan, dan pivot yang sangat lebar dipecah menjadi beberapa halaman yang mengulang label baris
Gambar PNG tajam lengkap dengan judul, sumber, dan filter, siap untuk slide, dokumen, atau chat
Markdown Tabel bergaya GitHub untuk README, issue, dan wiki
CSV Satu baris header dan angka mentah, dengan label baris diulang di setiap baris
HTML Halaman mandiri bergaya yang tetap mempertahankan header yang digabung
JSON Satu objek per baris, dengan key berupa header kolom

Copy menyalin pivot ke clipboard sebagai sel spreadsheet (bisa di-paste ke Excel atau Google Sheets, termasuk persentase), sebagai tabel Markdown, atau sebagai gambar.

Ini PNG yang dihasilkan ekspor Image untuk pivot di demo:

Ekspor gambar pivot pendapatan, lengkap dengan judul, sumber, dan ringkasan filter

Membuka pivot table

Lokasi Item menu Data yang digunakan
Dropdown tab baru (di samping +), menu Tools Pivot Table Query atau tabel yang dipilih di plugin
Hasil query atau data tabel: klik kanan sel atau sudut kiri atas Pivot Table from Selection Sel yang dipilih
Header tab query atau menu klik kanan di editor query Pivot Query Results Query tersebut, dijalankan ulang dengan batas baris
Tabel di sidebar, atau header tab tabel Open in Pivot Table Tabel tersebut, dengan filter tab sebagai klausa WHERE

Untuk mem-pivot seluruh result set dari grid, pilih semua sel terlebih dahulu (klik sudut kiri atas grid atau tekan Ctrl/Cmd+A), lalu klik kanan.

Sumber data bisa diubah kapan saja lewat tombol pensil di sidebar, yang menerima query SQL atau tabel dengan klausa WHERE opsional. SQL di status bar menampilkan query persis yang memuat data.

Batas baris

Pivot dihitung di dalam plugin, jadi data dimuat dengan batas baris: 10.000 baris secara default, bisa diatur hingga 100.000 (pilihan Anda akan diingat).

  • Query dibungkus menjadi SELECT * FROM (<query>) AS pivot_source LIMIT n (TOP di SQL Server, ROWNUM di Oracle, FIRST di Firebird), sehingga database yang melakukan pembatasan.
  • Jika database menolak query yang dibungkus (misalnya CTE di SQL Server), akan muncul prompt untuk menjalankan query apa adanya dan menyimpan baris-baris awal. Statement yang mungkin mengubah data tidak pernah dijalankan ulang tanpa konfirmasi.
  • Database tanpa subquery SQL (MongoDB, Redis, Cassandra, dan sejenisnya) menjalankan query apa adanya dan menyimpan baris-baris awal.
  • Banner muncul saat batas tercapai. Total hanya mencakup baris yang dimuat.
  • Saat tab tersimpan dibuka kembali, sumber query menunggu klik Run query alih-alih berjalan otomatis. Seleksi dan tabel langsung dimuat.

Tema terang dan gelap

Plugin ini memakai warna tema Beekeeper Studio dan ikut berganti bersama aplikasi.

Terang Gelap
Pivot table dengan tema terang Pivot table dengan tema gelap

Instalasi

Setelah dipublikasikan, instal Pivot Tables dari Tools → Manage Plugins di Beekeeper Studio (5.5 atau lebih baru).

Untuk menginstal build secara manual, download bk-plugin-pivot-tables-<version>.zip dari releases lalu ekstrak ke direktori plugin Beekeeper Studio:

  • Linux: ~/.config/beekeeper-studio/plugins/bk-plugin-pivot-tables
  • macOS: ~/Library/Application Support/beekeeper-studio/plugins/bk-plugin-pivot-tables
  • Windows: %APPDATA%\beekeeper-studio\plugins\bk-plugin-pivot-tables

Pengembangan

yarn install
yarn dev        # links the project into Beekeeper's plugins directory and serves it with hot reload
yarn harness    # runs the plugin in a browser against a fake Beekeeper Studio
yarn test:run   # unit tests (Vitest)
yarn typecheck
yarn build      # production build into dist/
yarn package    # release zip in release/ (after yarn build)

yarn dev menggunakan @beekeeperstudio/vite-plugin, yang membuat symlink proyek ke direktori plugin. Aktifkan plugin di Beekeeper Studio, lalu buka pivot dari salah satu menu di atas.

yarn harness menyajikan dev/host.html di http://localhost:5199/dev/host.html. Harness ini menjalankan plugin di dalam iframe dan menjawab request API-nya dari database SQLite in-memory berisi 5.000 contoh pesanan, sehingga UI dan ekspor bisa dikerjakan tanpa Beekeeper Studio. Parameter query:

  • command=new-pivot|pivot-selection|pivot-query|pivot-table memilih entri menu yang ditiru.
  • theme=light|dark mengatur tema.
  • fresh=1 menghapus state tab yang tersimpan.
  • prod=1 memuat build produksi dari dist/ (jalankan yarn build terlebih dahulu).

docs/demo.gif direkam dari harness oleh scripts/record-demo.cjs, jadi bisa direkam ulang setelah ada perubahan UI. Dengan yarn harness berjalan:

npm install -g playwright && npx playwright install chromium   # once; also needs ffmpeg
NODE_PATH="$(npm root -g)" node scripts/record-demo.cjs

Struktur proyek

manifest.json            Plugin manifest: one view, menu entries for each way of opening it
src/App.vue              Startup, data loading, state persistence, export actions
src/components/          Field list, drop zones, menus, pivot table renderer, source editor
src/lib/pivot/           Pivot engine, aggregators, date grouping, grid layout (headers and spans)
src/lib/source/          Loading data: selections, queries and tables with dialect-aware row limits
src/lib/export/          Excel, PDF, image, Markdown, CSV, HTML and JSON exporters
tests/                   Vitest specs
dev/                     Browser harness that emulates Beekeeper Studio

Mesin pivot menghasilkan grid sel dengan row span dan column span (src/lib/pivot/grid.ts). Tabel di layar dan setiap exporter merender dari grid tersebut, sehingga semuanya menampilkan tata letak yang sama.

Rilis

  1. Jalankan bin/make-release.sh. Skrip ini menyarankan versi berikutnya dari tag yang ada, mengatur version di manifest.json dan package.json, melakukan commit, lalu push tag yang sesuai seperti v1.0.0.
  2. Workflow rilis menjalankan tes, build, dan membuat rilis GitHub draft berisi manifest.json dan bk-plugin-pivot-tables-<version>.zip. Tinjau lalu publikasikan.
  3. Agar tercantum di Plugin Manager, tambahkan entri ke plugins.json di beekeeper-studio-plugins.

Keterbatasan

  • Filter tab tabel diteruskan ke plugin oleh build Beekeeper Studio yang menyertakan perubahan filter serializeTab. Versi lama membuka seluruh tabel (dengan batas baris); klausa WHERE tetap bisa diketik di editor sumber.
  • Grid menampilkan 500 baris dan 300 kolom pertama dari pivot yang sangat besar (“Show more” memuat lebih banyak baris). Hasil ekspor selalu mencakup semuanya.
  • Gambar mencakup 2.000 baris pertama.
  • Ekspor PDF tidak bisa menampilkan karakter CJK, karena tidak didukung oleh font DejaVu yang disematkan.

Lisensi

GPL-3.0. Menyertakan font DejaVu (lisensi Bitstream Vera) untuk ekspor PDF.