9.0.4においてキーワードとされている全てのトークンを示します。この背景となる情報は項4.1.1にあります。SQLは予約と未予約キーワードを区別します。標準に従うと予約語のみが真のキーワードとなり、その予約語は識別子として使用することはできません。未予約語はある特定の文脈で特別な意味を持ち、また、その他の文脈では識別子として使用することができます。ほとんどの未予約語は、SQLで規定された組み込みのテーブル名と関数名で、未予約語の本質的な存在意義は、ある文脈においては前もって定義された意味があることを宣言することにあります。PostgreSQLの構文解析の過程では、少々複雑になります。複数の異なったトークンのクラスがあり、それらは識別子としてまったく使用できないものから、普通の識別子と比較して、パーサ内で特別なステータスを持たないものまであります。(後者は一般的にはSQLで規定された関数です。CHECKのようにすることが可能です)。表C-1のPostgreSQLの列では、パーサがはっきりと理解しているキーワードではあるが、列名やテーブル名としても使用できるものを"未予約語"としています。キーワードの中には、どちらかといえば未予約語であるが、関数名や型名として使用できないものもあり、そのように注記しています。(このようなキーワードのほとんどは、特殊な構文をもった組み込み済みの関数やデータ型を表しています。この関数または型は使用することができますが、ユーザによって定義し直すことはできません。"予約語"とされるものは列名やテーブル名として使用できないトークンです。予約語の中には関数名やデータ型として使用できるものもあります。この情報も次の表に示しています。何も注記がなければ、予約キーワードは"AS"の列ラベル名としてしか使用することができません。一般的な規則として、以下に示すキーワードのいずれかを識別子として含むコマンドで、おかしなパーサエラーが発生した場合、その識別子を引用符でくくって問題が解決するかどうか確認してください。表C-1を見る前に、PostgreSQLにおいて予約されていないキーワードが、その単語に関連する機能を実装していないということを意味していないことを理解しておいてください。逆に、キーワードがあるということが機能の存在を意味していないということです。