sql >> Databáze >  >> RDS >> PostgreSQL

Jak funguje IsFinite() v PostgreSQL

V PostgreSQL je to isfinite() funkční testy pro konečné datum, časové razítko nebo interval.

To může být užitečné, protože Postgres podporuje nekonečné množství dat/časových razítek. Můžete mít například časové razítko nekonečna nebo záporného nekonečna a tato funkce vám to umožňuje otestovat.

Syntaxe

Funkce přebírá jeden parametr, kterým může být buď datum , časové razítko nebo interval :

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

Příklad

Zde je příklad toho, jak to funguje s datem hodnotu.

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

Výsledek:

True

V závislosti na tom, kde jej spustíte, můžete získat buď true nebo false , nebo t nebo f výsledek.

Při používání Azure Data Studio jsem získal výše uvedený výsledek.

Když to spustím v psql , dostávám následující výsledek:

t

Časové razítko

Tady je to s časovým razítkem hodnotu.

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

Výsledek:

True

Interval

Tady je to s intervalem hodnotu.

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

Výsledek:

True

Nekonečno

Všechny předchozí příklady vrátí hodnotu true. Zde je jeden, který vrací hodnotu false. V tomto případě používám infinity konstantní.

SELECT isfinite('infinity'::timestamp);

Výsledek:

False

Negativní nekonečno

Stejný výsledek při použití záporného nekonečna.

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

Výsledek:

False

  1. Použití JDeveloper s databází MySQL a databází Oracle na AWS RDS, část 3

  2. Co jsou krycí indexy a kryté dotazy v SQL Server?

  3. Operace není platná pro stav chyby transakce a rozsah transakce

  4. *ALERT* Nelze otevřít žádnou další chybu databází s Microsoft Office build 2201