PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak działa IsFinite() w PostgreSQL

W PostgreSQL funkcja isfinite() testy funkcjonalne dla skończonej daty, znacznika czasu lub interwału.

Może to być przydatne, ponieważ Postgres obsługuje nieskończone daty/znaczniki czasu. Na przykład możesz mieć znacznik czasu nieskończoności lub ujemnej nieskończoności, a ta funkcja pozwala to przetestować.

Składnia

Funkcja przyjmuje jeden parametr, którym może być data , sygnatura czasowa lub przedział :

isfinite(date)
isfinite(timestamp)
isfinite(interval)

Przykład

Oto przykład, jak to działa z datą wartość.

SELECT isfinite(date '2020-10-23');

Wynik:

True

W zależności od tego, gdzie go uruchomisz, możesz otrzymać true lub false lub t lub f wynik.

Otrzymałem powyższy wynik podczas korzystania z usługi Azure Data Studio.

Kiedy uruchamiam go w psql , otrzymuję następujący wynik:

t

sygnatura czasowa

Tutaj jest z sygnaturą czasową wartość.

SELECT isfinite(timestamp '2020-10-23 12:30:45');

Wynik:

True

Odstęp

Tutaj jest z interwałem wartość.

SELECT isfinite(interval '2 hours 30 minutes');

Wynik:

True

Nieskończoność

Wszystkie poprzednie przykłady zwracają prawdę. Oto taki, który zwraca fałsz. W tym przypadku używam infinity stała.

SELECT isfinite('infinity'::timestamp);

Wynik:

False

Ujemna nieskończoność

Ten sam wynik przy użyciu ujemnej nieskończoności.

SELECT isfinite('-infinity'::timestamp);

Wynik:

False

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wartość Postgres SSLMode wymaga nieważności, gdy obsługa protokołu SSL nie jest skompilowana przy użyciu zewnętrznego opakowania danych

  2. Unikatowe ograniczenie Postgresa a indeks

  3. Przegląd buforowania dla PostgreSQL

  4. Slick 2.0 Ogólne operacje CRUD

  5. Używanie row_to_json() z połączeniami zagnieżdżonymi