Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:
Databricks SQL
Databricks Runtime
Mengekstrak bagian dari tanggal, penanda waktu, atau interval.
Sintaks
date_part(fieldStr, expr)
Argumen
-
fieldStr: Sebuah literalSTRING. -
expr: EkspresiDATE, ,TIMESTAMPatauINTERVAL.
Pengembalian
Jika fieldStr adalah 'SECOND', maka DECIMAL(8, 6).
Dalam semua kasus lain, INTEGER.
Nilai field yang didukung adalah ketika source adalah DATE atau TIMESTAMP:
-
'YEAR','Y','YEARS','YR','YRS': Bidang tahun -
'YEAROFWEEK': Tahun penomoran minggu ISO 8601 yang termasuk dalam tanggal dan waktu. Misalnya, 2005-01-02 adalah bagian dari minggu ke-53 dari tahun 2004, jadi hasilnya adalah 2004 -
'QUARTER','QTR': Kuartal (1 - 4) tahun di mana tanggal dan waktu jatuh -
'MONTH','MON','MONS','MONTHS': Bidang bulan (1 - 12) -
'WEEK','W','WEEKS': Nomor minggu tahun berbasis minggu menurut ISO 8601. Seminggu dianggap dimulai pada hari Senin dan minggu 1 adalah minggu pertama dengan >3 hari. Dalam sistem penomoran minggu ISO, dimungkinkan bagi tanggal awal Januari menjadi bagian dari minggu ke-52 atau ke-53 tahun sebelumnya, dan untuk tanggal di akhir Desember menjadi bagian dari minggu pertama tahun depan. Misalnya, 2005-01-02 adalah bagian dari minggu ke-53 tahun 2004, sedangkan 2012-12-31 adalah bagian dari minggu pertama 2013 -
'DAY','D','DAYS': Bidang hari dalam bulan (1 - 31) -
'DAYOFWEEK','DOW': Hari dalam seminggu untuk tanggal dan waktu sebagai Minggu(1) hingga Sabtu(7) -
'DAYOFWEEK_ISO','DOW_ISO': ISO 8601 berdasarkan hari dalam seminggu untuk tanggal dan waktu sebagai Senin(1) hingga Minggu(7) -
'DOY': Hari dalam setahun (1 - 365/366) -
'HOUR','H','HOURS','HR','HRS': Bidang jam (0 - 23) -
'MINUTE','M','MIN','MINS','MINUTES': Bidang menit (0 - 59) -
'SECOND','S','SEC','SECONDS','SECS': Bidang detik, termasuk bagian pecahan
Nilai yang didukung dari field ketika source adalah INTERVAL (tidak peka huruf besar/kecil) adalah sebagai berikut:
-
'YEAR','Y','YEARS','YR','YRS': Total bulan / 12 -
'MONTH''MON','MONS','MONTHS': Jumlah bulan % 12 -
'DAY''D''DAYS': Bagian hari dari interval -
'HOUR','H','HOURS','HR','HRS': Berapa jam berisi mikrodetik -
'MINUTE', ,'M''MIN','MINS','MINUTES': Berapa menit tersisa setelah mengambil jam dari mikrodetik -
'SECOND','S','SEC','SECONDS','SECS': Berapa detik dengan pecahan tersisa setelah mengurangi jam dan menit dari total mikrodetik
Fungsi date_part adalah sinonim untuk fungsi standar ekstrak SQL.
Misalnya date_part('year', CURRENT_DATE) setara dengan extract(YEAR FROM CURRENT_DATE)
Contoh
> SELECT date_part('YEAR', TIMESTAMP'2019-08-12 01:00:00.123456');
2019
> SELECT date_part('Week', TIMESTAMP'2019-08-12 01:00:00.123456');
33
> SELECT date_part('day', DATE'2019-08-12');
12
> SELECT date_part('SECONDS', TIMESTAMP'2019-10-01 00:00:01.000001');
1.000001
> SELECT date_part('Months', INTERVAL '2-11' YEAR TO MONTH);
11
> SELECT date_part('seconds', INTERVAL '5:00:30.001' HOUR TO SECOND);
30.001000