untuk mendapatkan data 30 hari kebelakang jika menggunakan query manual yaitu dengan cara:
SELECT
*
FROM
book
WHERE
created_at > '04/18/2021 00:00:00'
tentunya cara di atas tidak dinamis karena kita harus menuliskan tanggal yang ingin kita cari. dengan menggunakan metode interval yang di sediakan oleh postgresql kita akan di mudahkan untuk mencari data yang di inginkan.
berikut contoh query mengunakan interval:
SELECT
*
FROM
book
WHERE
completed_at > now() - interval '30 day'
kode now() - interval '30 day' secara otomatis menghitung tanggal 30 hari kebelakang. unit yang tersedia tidak hanya day saja, diantaranya ada (microsecond
, millisecond
, second
, minute
, hour
, day
, week
, month
, year
, decade
, century
, millennium
,)
kita bila mengkombinasikan pencarian dengan unit yang lebih spesifik seperti:
WHERE completed_at > now() - interval '1 year 137 days 12 hours'
dengan menggunakan insert kita juga bisa menggunakan interval tersebut
INSERT INTO book
VALUES (DEFAULT, 1, 'We Have Always Lived in the Castle', now() - interval '28 day', now());
Komentar
Posting Komentar