O
to_char()
do PostgreSQL A função nos fornece a opção de adicionar o sufixo do número ordinal ao resultado. Isso significa que podemos adicionar o indicador ordinal ao formatar datas.
Por exemplo, em vez de produzir 10 de fevereiro, poderíamos produzir 10 de fevereiro.
Modificadores de padrão de modelo
Os seguintes modificadores de padrão de modelo podem ser usados para aplicar o sufixo de número ordinal.
Modificador | Descrição |
---|---|
th | Sufixo de número ordinal em minúsculas. |
TH | Sufixo de número ordinal maiúsculo. |
Exemplo
Aqui está um exemplo de uso.
SELECT to_char(date '2001-03-25', 'DDth');
Resultado:
25th
Observe que ele ajustará automaticamente o sufixo entre “th”, “st”, “rd”, etc, dependendo do valor da data real.
Por exemplo, aqui está o que acontece se eu alterar a data do exemplo anterior.
SELECT to_char(date '2001-03-01', 'DDth');
Resultado:
01st
Suprimir zero à esquerda
Podemos modificar o exemplo anterior para suprimir o zero à esquerda.
Para fazer isso, prefixe o modificador de template com
fm
. SELECT to_char(date '2001-03-01', 'fmDDth');
Resultado:
1st
Uma data mais completa
Aqui está um exemplo que se baseia no exemplo anterior para que possamos gerar uma data mais completa.
SELECT to_char(date '2001-03-01', 'Day, fmDDth Month YYYY');
Resultado:
Thursday , 1st March 2001
Indicador Ordinal para o Século
O sufixo do número ordinal também pode ser usado ao exibir o século.
SELECT
concat(to_char(date '2019-10-23', 'CCth'), ' Century');
Resultado:
21st Century