Di PostgreSQL, date_part()
fungsi mengambil subbidang seperti tahun, bulan, jam, atau menit, bagian dari nilai tanggal/waktu.
Ini setara dengan extract()
fungsi, meskipun dengan sintaks yang sedikit berbeda.
Sintaks
Fungsi tersebut memiliki sintaks berikut:
date_part('field', source)
Dimana:
'field'
adalah untuk bagian tanggal yang ingin Anda ambil. Parameter ini harus berupa nilai string, bukan nama. Lihat di bawah untuk daftar nama bidang yang valid.source
adalah stempel waktu atau interval bagian tanggal yang Anda inginkan untuk diambil.
Contoh – Stempel Waktu
Berikut adalah contoh dasar untuk mendemonstrasikan cara mengambil bidang dari stempel waktu .
SELECT date_part('hour', timestamp '2020-09-16 22:33:15');
Hasil:
22
Contoh ini mengambil bidang jam dari stempel waktu nilai.
Ini dia lagi, tapi kali ini saya mengambil bidang tahun.
SELECT date_part('year', timestamp '2020-09-16 22:33:15');
Hasil:
2020
Contoh – Interval
Dalam contoh ini, saya mengambil bagian tanggal dari interval nilai.
SELECT date_part('hour', interval '5 hours 30 minutes');
Hasil:
5
Pada contoh berikutnya, fungsi mengembalikan jumlah jam dengan benar, meskipun saya hanya memberikan jumlah menit.
SELECT date_part('hour', interval '120 minutes');
Hasil:
2
Namun, jangan mengandalkan teknik ini. Anda mungkin menemukan bahwa Anda tidak selalu mendapatkan hasil yang Anda harapkan.
Misalnya:
SELECT date_part('hour', interval '100 minutes');
Hasil:
1
Dan satu lagi:
SELECT date_part('minute', interval '2 hours');
Hasil:
0
Nama Bidang
Argumen pertama dapat berupa salah satu dari berikut ini:
century
day
decade
dow
doy
epoch
hour
isodow
isoyear
microseconds
millennium
milliseconds
minute
month
quarter
second
timezone
timezone_hour
timezone_minute
week
year