sql >> Database >  >> RDS >> PostgreSQL

Hoe IsFinite() werkt in PostgreSQL

In PostgreSQL is de isfinite() functietests voor een eindige datum, tijdstempel of interval.

Dit kan handig zijn, omdat Postgres oneindige datums/tijdstempels ondersteunt. U kunt bijvoorbeeld een tijdstempel van oneindig of negatief oneindig hebben, en met deze functie kunt u dat testen.

Syntaxis

De functie heeft één parameter nodig, dit kan een datum . zijn , tijdstempel , of interval :

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

Voorbeeld

Hier is een voorbeeld van hoe het werkt met een datum waarde.

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

Resultaat:

True

Afhankelijk van waar u het uitvoert, krijgt u mogelijk een true of false , of een t of f resultaat.

Ik kreeg het bovenstaande resultaat bij het gebruik van Azure Data Studio.

Als ik het uitvoer in psql , krijg ik het volgende resultaat:

t

Tijdstempel

Hier is het met een tijdstempel waarde.

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

Resultaat:

True

Interval

Hier is het met een interval waarde.

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

Resultaat:

True

Oneindig

Alle voorgaande voorbeelden retourneren true. Hier is er een die false retourneert. In dit geval gebruik ik de infinity constant.

SELECT isfinite('infinity'::timestamp);

Resultaat:

False

Negatieve oneindigheid

Hetzelfde resultaat bij gebruik van negatief oneindig.

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

Resultaat:

False

  1. Het minimaliseren van de impact van het verbreden van een IDENTITEIT-kolom - deel 2

  2. VBA's functie voor het wijzigen van hoofdletters

  3. SQLite kan databasebestand (code 14) niet openen bij frequente SELECT-query

  4. Gastgebruiker wachtwoord in 11i/R12