Di PostgreSQL Anda dapat menggunakan extract()
berfungsi untuk mendapatkan nomor minggu dari tanggal.
Anda juga dapat menggunakan date_part()
berfungsi untuk melakukan hal yang sama.
Contoh 1:Fungsi extract()
Berikut ini contoh penggunaan extract()
berfungsi untuk mengekstrak minggu dari tanggal.
Pilih ekstrak(minggu dari tanggal '2020-12-27') SEBAGAI "Nomor Minggu";
Hasil:
Nomor Minggu ------------- 52
Contoh 2:Fungsi date_part()
Berikut cara melakukan hal yang sama menggunakan date_part()
fungsi.
SELECT date_part('week', date '2020-12-27') SEBAGAI "Nomor Minggu";
Hasil:
Nomor Minggu ------------- 52
Contoh 3:Tentang Sistem Penomoran Minggu ISO
Jika Anda mendapatkan hasil yang tidak Anda harapkan, itu mungkin karena cara penomoran minggu ISO ditentukan.
Minggu ISO dimulai pada hari Senin dan minggu pertama dalam satu tahun berisi 4 Januari tahun itu. Oleh karena itu, tanggal awal Januari mungkin menjadi bagian dari minggu ke-52 atau ke-53 tahun sebelumnya, dan tanggal akhir Desember menjadi bagian dari minggu pertama tahun berikutnya.
Contoh:
Pilih ekstrak(minggu dari tanggal '2021-01-03') AS "2021-01-03", ekstrak(minggu dari tanggal '2021-01-04') AS "2021-01-04";Hasil:
2021-01-03 | 2021-01-04 ------------+------------ 53 | 1Dalam hal ini, tanggal 3 Januari 2021 sebenarnya masih merupakan bagian dari minggu terakhir tahun 2020. Minggu pertama tahun 2021 baru dimulai pada tanggal 4 Januari.
Di bawah ini adalah contoh lain yang menunjukkan tanggal di akhir tahun sebagai bagian dari minggu pertama tahun berikutnya.
SELECT extract(minggu dari tanggal '2024-12-29') AS "2024-12-29", ekstrak(minggu dari tanggal '2024-12-30') AS "2024-12-30";Hasil:
2024-12-29 | 2024-12-30 ------------+------------ 52 | 1Dalam hal ini, 29 Desember 2024 adalah bagian dari minggu terakhir tahun 2024, tetapi segera setelah kita mencapai tanggal 30 Desember, kita berada di minggu pertama tahun 2025.