Cara menggunakan Liquid untuk memformat tanggal

Dalam beberapa situasi, Anda mungkin ingin mengubah cara Looker memformat tanggal.

Misalnya, jika Anda membuat Eksplorasi dan dasbor untuk pengguna di Eropa, setiap tanggal dalam format semua numerik akan muncul dalam urutan Hari-Bulan-Tahun. Misalnya, 7 Juni 2019 harus diformat sebagai 07/06/2019 atau Jun 07, 2019. Format default Looker merender tanggal sebagai 2019-06-07. Meskipun dapat menggunakan fungsi SQL seperti DATE_FORMAT() untuk mengubah format tanggal, Anda mungkin tidak ingin menulis semuanya dalam SQL biasa.

Menggunakan Liquid di parameter html

Anda dapat menggunakan Format cair di parameter html dimensi untuk mengubah format kolom yang menggunakan format tanggal yang valid. Karena Liquid mengharapkan tanggal yang valid, sebaiknya gunakan jangka waktu dari grup dimensi yang ada. Anda tidak dapat mengubah angka minggu atau bulan, karena angka tersebut ditampilkan sebagai bilangan bulat.

Misalnya, Anda dapat memformat ${created_date} untuk dirender sebagai Aug 23 22, bukan 2022-08-23 default Looker:


  dimension: date_formatted {
    sql: ${created_date} ;;
    html:{{ rendered_value | date: "%b %d, %y" }};;
  }


Format sintaksis string "%b %d, %y" sama dengan strftime.

Karena parameter html menggunakan Format cairan, nilai asli jangka waktu tidak berubah — hanya cara nilai dirender ke pengguna. Hal ini memastikan bahwa urutan tanggal yang muncul dalam kueri tidak akan berubah.

Berikut ini beberapa contoh lain yang dapat Anda gunakan. Referensi yang lebih besar terkait format yang tersedia ada di bagian bawah halaman ini.

Preset Contoh
%m/%d/%Y 05/06/2013
%A, %B %e, %Y Rabu, 5 Juni 2013
%b %e %a 5 Jun Rab

Contoh

Contoh kueri Jelajah berikut menampilkan Tanggal Item Pesanan dan Minggu Item Pesanan dengan format yang berbeda dan diatur dalam label grup Tanggal dibuat untuk menyimulasikan grup dimensi tanggal di pemilih kolom Eksplorasi.

Format kustom menampilkan tanggal dan minggu manakah dalam setahun kepada pengguna yang sesuai dengan nilai Jumlah Item terbesar dalam urutan menurun.

Lihat halaman dokumentasi group_label untuk mempelajari lebih lanjut cara menggunakan parameter group_label.

Kueri Eksplorasi menampilkan hasil pemformatan tanggal kustom untuk Tanggal Item Pesanan, Minggu Item Pesanan, yang diurutkan berdasarkan Jumlah Item Pesanan secara menurun.

LookML

Contoh Explore menggunakan LookML berikut:



# The original dimension group - hidden so that users can only choose from the formatted dates date and week timeframes
  dimension_group: created {
    hidden: yes
    type: time
    timeframes: [
      raw,
      time,
      date,
      hour,
      hour_of_day,
      time_of_day,
      week,
      month,
      quarter,
      year
    ]
    sql: ${TABLE}.created_at ;;
  }

# The customized timeframes, organized in the Explore field picker under the group label Created date
  dimension: date_formatted {
    group_label: "Created date"
    label: "Date"
    type: date_raw
    sql: ${created_date} ;;
    html: {{ rendered_value | date: "%b %d, %y" }};;
  }

  dimension: week_formatted {
    group_label: "Created date"
    label: "Week"
    type: date_raw
    sql: ${created_week} ;;
    html: {{ rendered_value | date: "Week %U (%b %d)" }};;
  }


strftime Reference

Tabel berikut mencantumkan berbagai format strftime. Perhatikan bahwa tidak semua format dapat dirender seperti yang diharapkan di Looker.

penentu Diganti dengan Contoh
%a Singkatan nama hari kerja * Kam
%A Nama lengkap hari kerja * Kamis
%b Singkatan nama bulan * Ags
%B Nama bulan lengkap * Agustus
%c Representasi tanggal dan waktu * Kamis 23 Agu 2001 14:55:02
%C Tahun dibagi 100 dan dipotong menjadi bilangan bulat (00-99) 20
%h Hari dalam bulan, dengan padding nol (01-31) 23
%D Tanggal BB/HH/TT yang singkat, setara dengan %m/%d/%y 08/23/01
%e Hari dalam bulan, dengan spasi ( 1-31) 23
%F Tanggal YYYY-MM-DD yang singkat, setara dengan %Y-%m-%d 2001-08-23
%g Tahun berdasarkan minggu, dua digit terakhir (00-99) 1
%G Tahun berbasis minggu 2001
%j Singkatan nama bulan * (sama seperti %b) Ags
%T Jam dalam format 24 jam (00-23) 14
%I Jam dalam format 12 jam (01-12) 02
%j Hari dalam setahun (001-366) 235
%k Jam dalam format 24 jam, satu digit dilanjutkan dengan spasi kosong (0-23) 14
%l Jam dalam format 12 jam, satu digit dilanjutkan dengan spasi kosong (0-12) 2
%m Bulan dalam bentuk angka desimal (01-12) 8
%JT Menit (00-59) 55
%n Karakter baris baru ('\n')
%p penetapan am atau pm dalam huruf kecil pm
%r Clock time 12 jam * 14:55:02
%R 24 jam HH:MM waktu, setara dengan %H:%M 14:55
%s Jumlah detik sejak Epoch, 1970-01-01 00:00:00 +0000 (UTC) 1566236649
%S Detik (00-61) 2
%t Karakter tab horizontal ('\t')
%T Format waktu ISO 8601 (HH:MM:SS), setara dengan %H:%M:%S 14:55:02
%u ISO 8601 hari kerja sebagai angka dengan Senin sebagai 1 (1-7) 4
%U Angka minggu dengan Minggu pertama sebagai hari pertama dalam minggu pertama (00-53) 33
%V Nomor minggu ISO 8601 (01-53) 34
%w Hari kerja sebagai angka desimal dengan hari Minggu sebagai 0 (0-6) 4
%W Angka minggu dengan Senin pertama sebagai hari pertama dalam minggu pertama (00-53) 34
%x Representasi tanggal * 08/23/01
%X Representasi waktu * 14:55:02
%t Tahun, dua digit terakhir (00-99) 1
%T Year 2001
%z Offset ISO 8601 dari UTC dalam zona waktu (1 menit=1, 1 jam=100)Jika zona waktu tidak dapat ditentukan, tidak ada karakter 100
%Z Nama zona waktu atau singkatan *Jika zona waktu tidak dapat ditentukan, tidak ada karakter CDT
%% Tanda % %