Dalam PostgreSQL, pertanyaan mengikut masa ialah keperluan operasi biasa. Melalui pertanyaan masa yang munasabah, anda boleh menapis keluar data yang memenuhi syarat dengan cepat. Apabila menggunakan PostgreSQL untuk pertanyaan masa, anda boleh menggunakan pelbagai kaedah, seperti menggunakan operator perbandingan, menggunakan fungsi tarikh, dsb. Sebagai contoh, anda boleh menggunakan operator "=" untuk menanyakan data pada tarikh tertentu, operator "ANTARA" untuk menanya data dalam julat masa tertentu atau menggunakan fungsi tarikh seperti "date_trunc" untuk tepat pada unit masa tertentu. . Pendek kata, menguasai kemahiran ini boleh membuatkan kita melakukan pertanyaan masa dengan lebih cekap.
id_peranti | peranti_dicipta_di |
---|---|
10e7983e-6a7b-443f-b0fe-d5e6485a502c | 2022-08-10 20:55:16.695 |
Saya mempunyai jadual dengan tarikh/masa saya dalam format: 2022-08-10 20:55:16.695 iaitu objek dengan cap masa. Saya mencuba pertanyaan berikut tetapi tiada baris dikembalikan:
select * from device where to_char(device_created_at,'yyyy-mm-dd hh24:mi:ss.fff') = '2022-08-10 20:55:16.695'
peranti_dicipta_di adalah daripada jenis "cap masa tanpa zon masa"
Bagaimana untuk membuat pertanyaan berdasarkan cap waktu dalam postgressql?
Cuba bandingkan nilai cap masa berbanding rentetan:
SELECT * FROM device WHERE device_created_at = CAST('2022-08-10 20:55:16.695' AS TIMESTAMP)
Lihat demo di sini.
Atas ialah kandungan terperinci Bagaimana untuk membuat pertanyaan mengikut masa dalam postgresql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!