Use uma
date
adequada digite mesmo assim. não armazenar texto ou várias colunas. Isso seria mais caro e menos confiável. Use a função
to_date()
, que é adequado para lidar com suas necessidades fora da caixa. Por exemplo, se você chamá-lo com um padrão 'YYYYMMDD'
e a string real está faltando caracteres para dia, ou mês e dia, o padrão é o primeiro mês/dia do ano/mês:db=# SELECT to_date('2001', 'YYYYMMDD');
to_date
------------
2001-01-01
db=# SELECT to_date('200103', 'YYYYMMDD');
to_date
------------
2001-03-01
Você pode armazenar um sinalizador de precisão indicando ano / mês / dia adicionalmente, se precisar.