PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Cara Mendapatkan Tanggal Kemarin di PostgreSQL

Masalah:

Anda ingin menampilkan tanggal kemarin (tanpa waktu) dalam database PostgreSQL.

Solusi 1:

SELECT current_date - INTEGER '1' AS yesterday_date;

Dengan asumsi hari ini adalah 24-09-2020, hasilnya adalah:

kemarin_date
23-09-2020

Diskusi:

Untuk mendapatkan tanggal kemarin, Anda perlu mengurangi satu hari dari tanggal hari ini. Gunakan current_date untuk mendapatkan tanggal hari ini. Perhatikan bahwa Anda tidak memerlukan tanda kurung di akhir current_date fungsi. Di PostgreSQL, Anda dapat mengurangi atau menambahkan jumlah hari apa pun menggunakan INTEGER kata kunci. Di sini, karena Anda perlu mengurangi satu hari, Anda menggunakan - INTEGER '1' untuk mendapatkan kencan kemarin. Perhatikan bahwa hasil perhitungan ini masih memiliki jenis kolom date .

Solusi 2:

SELECT (current_date - INTERVAL '1 day')::date AS yesterday_date;

Dengan asumsi hari ini adalah 24-09-2020, hasilnya adalah:

kemarin_date
23-09-2020

Diskusi:

Dapatkan tanggal hari ini menggunakan current_date . Anda perlu mengurangi interval satu hari dari tanggal saat ini. Untuk melakukannya, gunakan INTERVAL kata kunci, yang membuat interval waktu/tanggal yang Anda inginkan (di sini, '1 day' , yang di PostgreSQL sama dengan 24 jam). Mengurangi INTERVAL '1 day' dari tanggal hari ini akan menghasilkan kolom yang diformat sebagai stempel waktu, jadi Anda harus memasukkannya ke date . Cara tercepat untuk melakukannya di PostgreSQL adalah menambahkan ::date ke seluruh ekspresi (ingat untuk menyertakan ekspresi dalam tanda kurung).

Tentu saja, Anda dapat kembali dengan interval waktu apa pun dengan mudah. Ini contohnya:

SELECT (current_date - INTERVAL '3 months 10 days')::date;

Sebuah INTERVAL juga dapat ditambahkan untuk kencan. Nah, ini dia caranya kalau mau kencan besok:

SELECT (current_date + INTERVAL '1 day')::date AS tomorrow_date;

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ubah jenis bidang varchar ke integer:tidak dapat dilemparkan secara otomatis ke tipe integer

  2. Mengelola Commitfest PostgreSQL

  3. Periksa target statistik di PostgreSQL

  4. Pencocokan partisi tingkat lanjut untuk penggabungan partisi

  5. Java - tanggal disimpan sebagai hari sebelumnya