Przykład
Możesz przekonwertować wartość timestamp
lub interval
na ciąg znaków za pomocą funkcji to_char()
:
SELECT to_char('2016-08-12 16:40:32'::timestamp, 'DD Mon YYYY HH:MI:SSPM');
Ta instrukcja wyprodukuje ciąg znaków „12 Aug 2016 04:40:32PM”. Łańcuch formatujący można modyfikować na wiele różnych sposobów; pełną listę wzorców szablonów można znaleźć tutaj.
Zauważ, że do łańcucha formatującego można również wstawiać zwykły tekst, a wzorców szablonów można używać w dowolnej kolejności:
SELECT to_char('2016-08-12 16:40:32'::timestamp, '"Today is "FMDay", the "DDth" day of the month of "FMMonth" of "YYYY');
W ten sposób powstanie łańcuch „Dzisiaj jest sobota, 12 dzień miesiąca sierpnia 2016 roku”. Należy jednak pamiętać, że wszelkie wzorce szablonów – nawet te z pojedynczymi literami, jak „I”, „D”, „W” – są konwertowane, chyba że zwykły tekst jest w cudzysłowie. Jako środek bezpieczeństwa, powinieneś umieścić cały zwykły tekst w cudzysłowach, jak zrobiono to powyżej.
Możesz zlokalizować łańcuch na wybrany język (nazwy dni i miesięcy), używając modyfikatora TM (translation mode). Opcja używa ustawień lokalizacji serwera PostgreSQL lub klienta łączącego się z serwerem.
SELECT to_char('2016-08-12 16:40:32'::timestamp, 'TMDay, DD" de "TMMonth" del año "YYYY');
Przy ustawieniu hiszpańskich ustawień lokalnych otrzymujemy „Sábado, 12 de Agosto del año 2016”.
.