Zoeken…


Cast een tijdstempel of interval naar een string

U kunt een timestamp of interval omzetten in een tekenreeks met de functie to_char() :

SELECT to_char('2016-08-12 16:40:32'::timestamp, 'DD Mon YYYY HH:MI:SSPM');

Deze verklaring levert de tekenreeks "12 aug 2016 04:40:32 PM" op. De opmaakreeks kan op veel verschillende manieren worden gewijzigd; de volledige lijst met sjabloonpatronen vindt u hier .

Houd er rekening mee dat u ook gewone tekst in de opmaakreeks kunt invoegen en dat u de sjabloonpatronen in elke volgorde kunt gebruiken:

SELECT to_char('2016-08-12 16:40:32'::timestamp, 
               '"Today is "FMDay", the "DDth" day of the month of "FMMonth" of "YYYY');

Dit levert de string "Vandaag is zaterdag, de 12e dag van de maand augustus 2016" op. Houd er echter rekening mee dat sjabloonpatronen - zelfs de enkele letter zoals "I", "D", "W" - worden omgezet, tenzij de platte tekst tussen dubbele aanhalingstekens staat. Als veiligheidsmaatregel moet u alle platte tekst tussen dubbele aanhalingstekens plaatsen, zoals hierboven gedaan.

U kunt de tekenreeks lokaliseren in de door u gewenste taal (dag- en maandnamen) met behulp van de TM (vertaalmodus) modifier. Deze optie gebruikt de lokalisatie-instelling van de server waarop PostgreSQL wordt uitgevoerd of de client die hiermee verbinding maakt.

SELECT to_char('2016-08-12 16:40:32'::timestamp, 'TMDay, DD" de "TMMonth" del año "YYYY');

Met een Spaanse locale instelling levert dit "Sábado, 12 de Agosto del año 2016" op.

SELECTEER de laatste dag van de maand

U kunt de laatste dag van de maand selecteren.

SELECT (date_trunc('MONTH', ('201608'||'01')::date) + INTERVAL '1 MONTH - 1 day')::DATE; 

201608 kan worden vervangen door een variabele.

Tel het aantal records per week

SELECT date_trunc ('week', <>) ALS "Week", tel (*) VANAF <> GROEPEN OP 1 BESTELLEN OP 1;



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow