Perbarui :Lihat ini nanti, penjelasan yang lebih baik:
- Mengapa PostgreSQL menganggap batas NULL dalam jenis rentang berbeda dari batas tak terbatas padahal secara fungsional setara?
NULL
melakukan hal yang sama untuk operator tumpang tindih &&
sebagai -infinity
atau infinity
, masing-masing. Saya mengutip manualnya di sini:
Menggunakan NULL untuk kedua terikat menyebabkan rentang menjadi tidak terbatas di sisi itu.
Tapi sebagai nilai , NULL
masih berbeda dari 'infinity'
!
SELECT tstzrange('-infinity','infinity') = tstzrange(NULL, NULL);
Mengembalikan FALSE
(bukan NULL
, ingat!).
Selengkapnya di SQLfiddle . ini .