postgresql Zet een tijdstempel of interval om in een string

Example

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

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

Dit statement zal de string “12 Aug 2016 04:40:32PM” opleveren. De opmaakstring kan op veel verschillende manieren worden aangepast; de volledige lijst met sjabloonpatronen vindt u hier.

Merk op dat u ook gewone tekst in de opmaakstring kunt invoegen en dat u de sjabloonpatronen in willekeurige 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 tekenreeks “Vandaag is het zaterdag, de 12e dag van de maand augustus van 2016” op. U moet er wel rekening mee houden dat alle sjabloonpatronen – zelfs die met een enkele letter zoals “I”, “D”, “W” – worden geconverteerd, tenzij de platte tekst tussen dubbele aanhalingstekens staat. Als veiligheidsmaatregel moet je alle platte tekst tussen dubbele aanhalingstekens zetten, zoals hierboven is gedaan.

Je kunt de string lokaliseren naar de taal van je keuze (dag en maand namen) door de TM (translation mode) modifier te gebruiken. Deze optie gebruikt de lokalisatie-instelling van de server waarop PostgreSQL draait of de client die er verbinding mee maakt.

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

Met een Spaanse lokalisatie-instelling levert dit “Sábado, 12 de Agosto del año 2016”.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.