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

Filter menurut rentang tanggal (bulan dan hari yang sama) sepanjang tahun

Dengan asumsi (dengan lompatan keyakinan) bahwa Anda menginginkan tanggal antara hari-hari tertentu dalam setahun terlepas dari tahun (seperti jika Anda mengirimkan sekumpulan kartu ulang tahun atau sesuatu), Anda dapat mengatur tes dengan ini:

CREATE TABLE d (dt date);
COPY d FROM STDIN;
1840-02-28
1990-06-21
1991-02-15
1991-04-25
1992-05-30
1995-03-04
1995-04-10
2001-02-03
2010-04-06
\.

Dan Anda dapat menggunakan "konstruktor nilai baris" untuk memilih rentang yang diinginkan dengan mudah:

SELECT * FROM d
  WHERE (EXTRACT(MONTH FROM dt), EXTRACT(DAY FROM dt))
           BETWEEN (2, 15) AND (6, 21);

Yang menghasilkan:

     dt     
------------
 1840-02-28
 1990-06-21
 1991-02-15
 1991-04-25
 1992-05-30
 1995-03-04
 1995-04-10
 2010-04-06
(8 rows)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hak istimewa PostgreSQL 8.3 tidak diperbarui - penggunaan yang salah?

  2. Memperbarui baris database tanpa mengunci tabel di PostgreSQL 9.2

  3. Kesalahan Menginstal Psycopg2 di MacOS 10.9.5

  4. Apakah PostGIS secara otomatis mengonversi saat memasukkan WKT?

  5. Cara memetakan org.postgresql.geometric.PGpoint ke Tipe Hibernasi