Použijte správné date
stejně typ. nedělejte to ukládat text nebo více sloupců. To by bylo dražší a méně spolehlivé.
Použijte funkci to_date()
, který je vhodný pro vyřízení vašich požadavků hned po vybalení. Pokud jej například zavoláte vzorem 'YYYYMMDD'
a ve skutečném řetězci chybí znaky pro den nebo měsíc a den, výchozí je první měsíc/den v roce/měsíci:
db=# SELECT to_date('2001', 'YYYYMMDD');
to_date
------------
2001-01-01
db=# SELECT to_date('200103', 'YYYYMMDD');
to_date
------------
2001-03-01
Pokud to potřebujete, můžete si navíc uložit přesný příznak udávající rok/měsíc/den.