century

De eeuw

SELECT EXTRACT(CENTURY FROM TIMESTAMP '2000-12-16 12:21:13');Result: 20SELECT EXTRACT(CENTURY FROM TIMESTAMP '2001-02-16 20:38:40');Result: 21

De eerste eeuw begint op 0001-01-01 00:00:00 AD, hoewel men dat toen nog niet wist. Deze definitie geldt voor alle landen met de Gregoriaanse kalender. Er is geen eeuwnummer 0, je gaat van -1 eeuw naar 1 eeuw. Als u het hier niet mee eens bent, schrijf dan uw klacht naar: Paus, Kathedraal Sint-Pieter van Roma, Vaticaan.

PostgreSQL releases vóór 8.0 volgden niet de conventionele nummering van eeuwen, maar retourneerden gewoon het jaarveld gedeeld door 100.

day

Voor timestamp waarden, de dag (van de maand) veld (1 – 31) ; voor intervalwaarden, het aantal dagen

SELECT EXTRACT(DAY FROM TIMESTAMP '2001-02-16 20:38:40');Result: 16SELECT EXTRACT(DAY FROM INTERVAL '40 days 1 minute');Result: 40

decade

Het jaarveld gedeeld door 10

SELECT EXTRACT(DECADE FROM TIMESTAMP '2001-02-16 20:38:40');Result: 200

dow

De dag van de week als zondag (0) tot zaterdag (6)

SELECT EXTRACT(DOW FROM TIMESTAMP '2001-02-16 20:38:40');Result: 5

Merk op dat extract’s dag van de week nummering verschilt van die van de to_char(..., 'D') functie.

doy

De dag van het jaar (1 – 365/366)

SELECT EXTRACT(DOY FROM TIMESTAMP '2001-02-16 20:38:40');Result: 47

epoch

Voor datum- en tijdstempelwaarden, het aantal seconden sinds 1970-01-01 00:00:00 UTC (kan negatief zijn); voor interval waarden, het totaal aantal seconden in het interval

SELECT EXTRACT(EPOCH FROM TIMESTAMP WITH TIME ZONE '2001-02-16 20:38:40.12-08');Result: 982384720.12SELECT EXTRACT(EPOCH FROM INTERVAL '5 days 3 hours');Result: 442800

Hier ziet u hoe u een epoch waarde terug kunt converteren naar een tijdstempel:

SELECT TIMESTAMP WITH TIME ZONE 'epoch' + 982384720.12 * INTERVAL '1 second';

(De to_timestamp functie kapselt de bovenstaande conversie in.)

uur

Het uur veld (0 – 23)

SELECT EXTRACT(HOUR FROM TIMESTAMP '2001-02-16 20:38:40');Result: 20

isodag

De dag van de week als maandag (1) tot en met zondag (7)

SELECT EXTRACT(ISODOW FROM TIMESTAMP '2001-02-18 20:38:40');Result: 7

Dit is identiek aan dow behalve voor zondag. Dit komt overeen met de ISO 8601 dag van de week nummering.

isoyear

De ISO 8601 week-nummering jaar dat de datum valt in (niet van toepassing op intervallen)

SELECT EXTRACT(ISOYEAR FROM DATE '2006-01-01');Result: 2005SELECT EXTRACT(ISOYEAR FROM DATE '2006-01-02');Result: 2006

Elk ISO 8601 week-nummering jaar begint met de maandag van de week die de 4e januari, dus in begin januari of eind december het ISO-jaar kan verschillen van het Gregoriaanse jaar. Zie het weekveld voor meer informatie.

Dit veld is niet beschikbaar in PostgreSQL versies ouder dan 8.3.

microseconden

Het secondenveld, inclusief fractionele delen, vermenigvuldigd met 1 000 000; merk op dat dit volle seconden omvat

SELECT EXTRACT(MICROSECONDS FROM TIME '17:12:28.5');Result: 28500000

millennium

Het millennium

SELECT EXTRACT(MILLENNIUM FROM TIMESTAMP '2001-02-16 20:38:40');Result: 3

Jaren in de jaren 1900 vallen in het tweede millennium. Het derde millennium is begonnen op 1 januari 2001.

PostgreSQL versies vóór 8.0 volgden niet de conventionele nummering van millennia, maar gaven gewoon het jaar veld gedeeld door 1000.

milliseconden

Het seconden veld, inclusief fractionele delen, vermenigvuldigd met 1000. Merk op dat dit volledige seconden omvat.

SELECT EXTRACT(MILLISECONDS FROM TIME '17:12:28.5');Result: 28500

minuut

Het minutenveld (0 – 59)

SELECT EXTRACT(MINUTE FROM TIMESTAMP '2001-02-16 20:38:40');Result: 38

maand

Voor tijdstempelwaarden, het nummer van de maand binnen het jaar (1 – 12) ; voor intervalwaarden, het aantal maanden, modulo 12 (0 – 11)

SELECT EXTRACT(MONTH FROM TIMESTAMP '2001-02-16 20:38:40');Result: 2SELECT EXTRACT(MONTH FROM INTERVAL '2 years 3 months');Result: 3SELECT EXTRACT(MONTH FROM INTERVAL '2 years 13 months');Result: 1

kwartaal

Het kwartaal van het jaar (1 – 4) waarin de datum valt

SELECT EXTRACT(QUARTER FROM TIMESTAMP '2001-02-16 20:38:40');Result: 1

seconde

Het secondenveld, inclusief fractionele delen (0 – 59)

SELECT EXTRACT(SECOND FROM TIMESTAMP '2001-02-16 20:38:40');Result: 40SELECT EXTRACT(SECOND FROM TIME '17:12:28.5');Result: 28.5

tijdzone

De tijdzone-offset van UTC, gemeten in seconden. Positieve waarden komen overeen met tijdzones ten oosten van UTC, negatieve waarden met zones ten westen van UTC. (Technisch gezien gebruikt PostgreSQL UT1 omdat schrikkelseconden niet worden verwerkt.)

timezone_hour

De uurcomponent van de tijdzone-offset

timezone_minute

De minuutcomponent van de tijdzone-offset

week

Het nummer van de ISO 8601 weeknummering week van het jaar. ISO-weken beginnen per definitie op maandag en de eerste week van een jaar bevat 4 januari van dat jaar. Met andere woorden, de eerste donderdag van een jaar valt in week 1 van dat jaar.

In het ISO-weeknummeringssysteem is het mogelijk dat data begin januari deel uitmaken van de 52e of 53e week van het voorgaande jaar, en dat data eind december deel uitmaken van de eerste week van het volgende jaar. Bijvoorbeeld, 2005-01-01 is deel van de 53e week van het jaar 2004, en 2006-01-01 is deel van de 52e week van het jaar 2005, terwijl 2012-12-31 deel is van de eerste week van 2013. Het wordt aanbevolen om het isoyear veld samen met week te gebruiken om consistente resultaten te krijgen.

SELECT EXTRACT(WEEK FROM TIMESTAMP '2001-02-16 20:38:40');Result: 7

year

Het jaar veld. Houd in gedachten dat er geen 0 AD is, dus het aftrekken van BC jaren van AD jaren moet voorzichtig worden gedaan.

SELECT EXTRACT(YEAR FROM TIMESTAMP '2001-02-16 20:38:40');Result: 2001

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.