Membuat tingkat dinamis

Tingkatan dapat menjadi cara yang baik untuk mengelompokkan nilai. Namun, dengan dimensi LookML type: tier, bucket tersebut bersifat standar dan statis. Terkadang, Anda mungkin ingin membuat tingkat dinamis yang memungkinkan pengguna mengubah ukuran bucket. Anda dapat melakukannya di Looker menggunakan kolom khusus filter (disebut parameter parameter) bersama dengan bahasa template (disebut Liquid).

Anda juga dapat menggunakan pengelompokan kustom untuk membuat tingkat dinamis secara native di Jelajahi jika Anda memiliki izin untuk membuat atau mengedit kolom kustom.

Untuk membuat tingkat dinamis:

  1. Buat parameter type: number untuk berfungsi sebagai kolom filter frontend tempat pengguna dapat memasukkan ukuran bucket numerik yang mereka inginkan.
  2. Buat dimensi yang mereferensikan nilai parameter dengan variabel Liquid {% parameter parameter_name %}. Dimensi ini menentukan berbagai bucket dan akan secara dinamis mengubah ukuran bucket ke nilai yang dimasukkan oleh pengguna di kolom filter frontend (parameter parameter).

Misalnya, developer membuat tingkat usia dinamis yang memungkinkan pengguna mengelompokkan nilai usia menurut rentang kustom:

Sintaksis SQL untuk contoh berikut mungkin perlu disesuaikan agar sesuai dengan dialek database Anda.
  parameter: age_tier_bucket_size {
    type: number
  }

  dimension: dynamic_age_tier {
    type: number
    sql: TRUNCATE(${TABLE}.age / {% parameter age_tier_bucket_size %}, 0)
          * {% parameter age_tier_bucket_size %} ;;
  }

Pengguna kini dapat memilih nilai tingkat untuk kolom Usia di Jelajah. Misalnya, pengguna mungkin ingin melihat usia yang dikelompokkan ke dalam bucket 10 tahun, jadi masukkan nilai 10 dalam filter Ukuran Bucket Tingkat Usia:

Jelajahi dengan Tingkat Usia Dinamis Pengguna dan Jumlah Pengguna yang difilter menurut nilai 10 di filter Ukuran Bucket Tingkat Usia Pengguna.

Ekspresi SQL dalam dimensi dynamic_age_tier membagi nilai usia dari kolom ${TABLE}.age pokok — misalnya 25 — dengan nilai parameter 10, sehingga menghasilkan 2, 5. Nilai 2,5 dipotong menjadi 2 oleh fungsi TRUNCATE dan dikalikan dengan nilai parameter 10, sehingga menghasilkan 20. 20 menjadi bucket; setiap nilai usia antara 20 dan 29 akan disertakan dalam bucket 20.