PostgreSQL はすべての日付/時刻のサポートをするため内蔵している発見的パーサを使用します。日付と時刻は文字列で入力され、そのフィールドにはどのような種類の情報が入るのかが事前にに決められている別個のフィールドに分割されます。それぞれのフィールドは解釈されたのち数値を割り当てられたり、無視されたりあるいははねられたりします。構文解析に際し月、曜日、および時間帯を含むテキストフィールドに対する内部参照テーブルがあります。
この付録ではこれらの参照テーブルの内容についての情報と構文解析で日付と時刻を解読する手順を説明します。
Table A-1. 月の簡略形
| 月 | 簡略形 |
|---|---|
| April | Apr |
| August | Aug |
| December | Dec |
| February | Feb |
| January | Jan |
| July | Jul |
| June | Jun |
| March | Mar |
| November | Nov |
| October | Oct |
| September | Sep, Sept |
Note: May には当然のごとく簡略形はありません。
Table A-2. 週の簡略形
| 曜日 | 簡略形 |
|---|---|
| Sunday | Sun |
| Monday | Mon |
| Tuesday | Tue, Tues |
| Wednesday | Wed, Weds |
| Thursday | Thu, Thur, Thurs |
| Friday | Fri |
| Saturday | Sat |
Table A-3. PostgreSQL フィールド修飾子
| 識別子 | 説明 |
|---|---|
| ABSTIME | 無視されるキーワード |
| AM | 12:00 以前の時刻 |
| AT | 無視されるキーワード |
| JULIAN, JD, J | 次のフィールドはユリウス日 |
| ON | 無視されるキーワード |
| PM | 12:00 以降の時刻 |
| T | 次のフィールドは時刻 |
歴史的な理由で ABSTIME キーワードは無視されます。非常に旧いリリースの PostgreSQL に於いては、無効な ABSTIME フィールドは "Invalid Abstime" のように警告がだされました。しかし現在ではこのようなことにはなりません。このキーワードは将来のリリースで削除される予定です。