postgresql Cast a timestamp or interval to a string

Příklad

Pomocí funkce to_char() můžete převést hodnotu timestamp nebo interval na řetězec:

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

Tento příkaz vytvoří řetězec „12 Aug 2016 04:40:32PM“. Formátovací řetězec lze upravit mnoha různými způsoby; úplný seznam vzorů šablon naleznete zde:

Všimněte si, že do formátovacího řetězce můžete vložit i prostý text a vzory šablon můžete použít v libovolném pořadí:

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

Tento příkaz vytvoří řetězec „Dnes je sobota, 12. den měsíce srpna roku 2016“. Měli byste však mít na paměti, že všechny vzory šablon – i ty jednopísmenné, jako je „I“, „D“, „W“ – jsou převedeny, pokud není prostý text v dvojitých uvozovkách. Jako bezpečnostní opatření byste měli dát veškerý prostý text do dvojitých uvozovek, jak bylo provedeno výše.

Řetězec můžete lokalizovat do zvoleného jazyka (názvy dnů a měsíců) pomocí modifikátoru TM (translation mode). Tato možnost využívá nastavení lokalizace serveru, na kterém běží PostgreSQL, nebo klienta, který se k němu připojuje.

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

Při nastavení španělské lokalizace vznikne „Sábado, 12 de Agosto del año 2016“.

.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.