Bagikan melalui


Pola tanggal waktu

Berlaku untuk:centang ditandai ya Databricks SQL centang ditandai ya Databricks Runtime

Ada beberapa skenario umum untuk penggunaan tanggal dan waktu di Azure Databricks:

Tabel pola

Azure Databricks menggunakan huruf pola dalam tabel berikut untuk penguraian dan pemformatan tanggal dan tanda waktu:

Simbol Makna Presentasi Contoh
G zaman teks Masehi; Anno Domini
y tahun tahun 2020; 20
D hari dalam tahun nomor 3 189
M/L bulan-tahun bulan 7; 07; Jul; Juli
d tanggal dalam bulan nomor 3 28
T/q kuartal-tahun nomor/teks 3; 03; Q3; kuarter ke-3
E hari dalam minggu teks Sel; Selasa
F hari yang selaras dalam seminggu dalam sebulan nomor(1) 3
sebuah pagi-sore/malam-hari pagi-sore Perdana Menteri
h jam dalam format 12-jam (1-12) nomor(2) 12
K jam-pagi-siang (0-11) nomor(2) 0
k jam-hari (1-24) nomor(2) 0
H jam-hari (0-23) nomor(2) 0
m menit dari jam nomor(2) 30
s detik-menit nomor(2) 55
S pecahan detik pecahan 978
V ID zona waktu zona-id Amerika/Los_Angeles; Z; -08:30
z nama zona waktu zona-nama Waktu Standar Pasifik; PST
O offset zona setempat offset-O GMT+8; GMT+08:00; UTC-08:00;
X penggeseran zona 'Z' untuk nilai nol offset-X Z; -08; -0830; -08:30; -083015; -08:30:15;
x pengimbangan zona offset-x +0000; -08; -0830; -08:30; -083015; -08:30:15;
Z pengimbangan zona offset-Z +0000; -0800; -08:00;
' {i>escape pembatas
'' kutipan tunggal harfiah '
[ Mulai bagian opsional
] akhir bagian opsional

Jumlah huruf pola menentukan format.

  • Teks: Gaya teks ditentukan berdasarkan jumlah huruf pola yang digunakan. Kurang dari 4 huruf pola kalimat akan disingkat, biasanya menjadi singkatan, misalnya hari dalam seminggu Senin dapat ditampilkan sebagai "Sen". Tepat 4 huruf pola akan menggunakan formulir teks lengkap, biasanya deskripsi lengkap, misalnya, hari Senin mungkin menampilkan "Senin". 5 huruf atau lebih akan gagal.

  • Nomor(n): N di sini mewakili jumlah huruf maksimum yang dapat digunakan oleh tipe pola tanggalwaktu ini. Jika jumlah huruf adalah satu, maka nilai akan ditampilkan menggunakan jumlah digit minimum tanpa penambahan. Jika tidak, hitungan digit digunakan sebagai lebar bidang keluaran, dengan nilai diisi nol seperlunya.

  • Nomor/Teks: Jika jumlah huruf pola adalah 3 atau lebih, gunakan aturan Teks di atas. Jika tidak, gunakan aturan Angka di atas.

  • Pecahan: Gunakan satu atau lebih (hingga 9) karakter 'S' yang berdekatan, misalnya, SSSSSS, untuk memproses dan memformat pecahan detik. Untuk penguraian, panjang pecahan yang dapat diterima dapat berupa [1, jumlah 'S' yang berdampingan]. Untuk pemformatan, panjang pecahan akan diisi ke jumlah 'S' yang berdekatan dengan nol. Azure Databricks mendukung presisi tanggal-waktu mikro-detik, yang memiliki hingga 6 digit signifikan, tetapi dapat menguraikan nano-detik dengan bagian yang berlebihan terpotong.

  • Tahun: Hitungan huruf menentukan lebar bidang minimum di bawah {i>padding

  • Bulan: Mengikuti aturan Angka/Teks. Formulir teks bergantung pada huruf - 'M' menunjukkan formulir 'standar', dan 'L' untuk formulir 'berdiri sendiri'. Kedua bentuk ini hanya berbeda dalam beberapa bahasa tertentu. Misalnya, dalam bahasa Rusia, 'Июль' adalah bentuk berdiri sendiri dari Juli, dan 'Июля' adalah bentuk standar. Berikut adalah contoh untuk semua huruf pola yang didukung:

    • 'M' atau 'L': Nomor bulan dalam setahun mulai dari 1. Tidak ada perbedaan antara 'M' dan 'L'. Bulan dari 1 hingga 9 dicetak tanpa tambahan.

      > SELECT date_format(date '1970-01-01', 'M');
        1
      
      > SELECT date_format(date '1970-12-01', 'L');
        12
      
    • 'MM' atau 'LL': Nomor bulan dalam setahun mulai dari 1. Nol padding ditambahkan untuk bulan 1-9.

      > SELECT date_format(date '1970-1-01', 'LL');
        01
      
      > SELECT date_format(date '1970-09-01', 'MM');
        09
      
    • 'MMM': Representasi tekstual pendek dalam bentuk standar. Pola bulan harus menjadi bagian dari pola tanggal, bukan hanya bulan yang berdiri sendiri, kecuali untuk lokal yang tidak memiliki perbedaan antara bentuk berdiri dan berdiri sendiri, seperti dalam bahasa Inggris.

      > SELECT date_format(date '1970-01-01', 'd MMM');
        1 Jan
      
      -- Passing a format pattern to to_csv()
      > SELECT to_csv(named_struct('date', date '1970-01-01'), map('dateFormat', 'dd MMM', 'locale', 'RU'));
        01 янв.
      
    • 'MMMM': representasi bulan tekstual penuh dalam bentuk standar. Ini digunakan untuk mengurai/memformat bulan sebagai bagian dari tanggal/stempel waktu.

      > SELECT date_format(date '1970-01-01', 'd MMMM');
        1 January
      
      -- Passing a format pttern to to_csv()
      > SELECT to_csv(named_struct('date', date '1970-01-01'), map('dateFormat', 'd MMMM', 'locale', 'RU'));
        1 января
      
  • am-pm: Ini menampilkan am-pm-of-day. Jumlah huruf pola harus 1.

  • Zone ID(V): Ini menampilkan tampilan ID zona waktu. Jumlah huruf pola harus 2.

  • Nama zona(z): Ini menampilkan nama tekstual tampilan ID zona waktu. Jika jumlah hurufnya satu, dua atau tiga, maka nama pendeknya akan keluar. Jika jumlah huruf adalah empat, maka nama lengkapnya akan ditampilkan. Lima atau lebih huruf akan gagal.

  • Offset X dan x: Ini memformat offset berdasarkan jumlah karakter pola. Satu karakter hanya menampilkan jam, seperti '+01', kecuali jika menitnya tidak nol, dalam hal ini menit juga ditampilkan, seperti '+0130'. Dua huruf menghasilkan jam dan menit, tanpa titik dua, seperti '+0130'. Tiga huruf menghasilkan jam dan menit, dengan titik dua, seperti '+01:30'. Empat huruf menghasilkan jam dan menit dan detik opsional, tanpa titik dua, seperti '+013015'. Lima huruf menampilkan jam dan menit, serta detik opsional, dengan titik dua, seperti '+01:30:15'. Enam huruf atau lebih akan gagal. Huruf pola 'X' (huruf besar) akan menampilkan 'Z' ketika offset yang akan dihasilkan adalah nol, sedangkan huruf pola 'x' (huruf kecil) akan menampilkan '+00', '+0000', atau '+00:00'.

  • Offset O: Ini memformat offset lokal berdasarkan jumlah huruf dalam pola. Satu huruf menghasilkan bentuk pendek offset yang dilokalkan, yang merupakan teks offset yang dilokalkan, seperti 'GMT', dengan jam tanpa nol di depan, opsional 2 digit menit dan detik jika bukan nol, dan titik dua, misalnya 'GMT+8'. Empat huruf menghasilkan formulir lengkap, yang merupakan teks offset yang dilokalkan, seperti 'GMT, dengan bidang jam dan menit 2 digit, bidang kedua opsional jika bukan nol, dan titik dua, misalnya 'GMT+08:00'. Hitungan huruf lainnya akan gagal.

  • Offset Z: Ini memformat offset berdasarkan jumlah huruf pola. Satu, dua atau tiga huruf menghasilkan jam dan menit, tanpa titik dua, seperti '+0130'. Outputnya adalah '+0000' saat offset adalah nol. Empat huruf menghasilkan bentuk lengkap offset yang dilokalkan, setara dengan empat huruf Offset-O. Output adalah teks offset lokal yang sesuai jika offset adalah nol. Lima huruf menampilkan jam, menit, dengan detik opsional jika bukan nol, dengan titik dua. Ini menghasilkan 'Z' jika offset adalah nol. Enam huruf atau lebih akan gagal.

  • Awal dan akhir bagian opsional: Gunakan [] untuk menentukan bagian opsional dan mungkin bersarang. Selama pemformatan, semua data yang valid dikeluarkan bahkan di bagian opsional. Selama penguraian, seluruh bagian mungkin hilang dari string yang diuraikan. Bagian opsional dimulai dengan [ dan diakhiri menggunakan ] (atau di akhir pola).

  • Simbol 'E', 'F', 'q' dan 'Q' hanya dapat digunakan untuk pemformatan tanggalwaktu, misalnya date_format. Mereka tidak boleh digunakan untuk penguraian tanggal dan waktu, misalnya to_timestamp.