В документации говорится, что мы можем указать точность от 0 (секунды) до 9 (наносекунды)
Однако, кажется, по умолчанию используется значение в миллисекундах, что бы я ни делал ...
SELECT
CURRENT_TIMESTAMP() AS CT0a
,to_varchar(CT0a, 'yyyy-mm-dd hh24:mi:ss.FF9') AS CT0b
,CURRENT_TIMESTAMP(1) AS CT1a
,to_varchar(CT1a, 'yyyy-mm-dd hh24:mi:ss.FF9') AS CT1b
,CURRENT_TIMESTAMP(9) AS CT9a
,to_varchar(CT9a, 'yyyy-mm-dd hh24:mi:ss.FF9') AS CT9b
;
Кажется возвращать то же самое, если я отображаю его с достаточным количеством десятичных знаков, что неизменно составляет миллисекунды ...
CT0A 2020-04-08 23:37:56.667 +0000
CT0B 2020-04-08 23:37:56.667000000
CT1A 2020-04-08 23:37:56.600 +0000
CT1B 2020-04-08 23:37:56.667000000
CT9A 2020-04-08 23:37:56.667 +0000
CT9B 2020-04-08 23:37:56.667000000
CT0a, CT1a и CT2a отображаются с соответствующим количеством десятичных знаков, но CT0b, CT1b и CT9b все отображать то же самое время с точностью до 3 десятичных знаков ...
Я что-то упускаю из виду?