Chapter 4. 関数と演算子

Table of Contents
4.1. 論理演算子
4.2. 比較演算子
4.3. 算術関数と演算子
4.4. 文字列関数と演算子
4.5. パターンマッチング
4.6. フォーマット関数
4.7. Date/Time 関数
4.8. 幾何関数と演算子
4.9. ネットワークアドレス型関数
4.10. 条件表現
4.11. その他の関数
4.12. 集約関数

Postgresには既存のデータ型のために 多くの関数や演算子が用意されています。さらに、 Programmer's Guideにも述べてあるように、 ユーザが新たに関数や演算子を定義することも可能です。 psql\dfコマンドと \doコマンドを使って、実際に存在する関数や演算子の リストをおのおの表示させることができます。

移植性について気になる場合、基本的な算術演算子や比較演算子、 明示的に印をつけた関数を除いて、この章で説明している関数や演算子のほとんどは 標準SQLでは規定されていない点にご注意下さい。 しかし、多くのRDBMSパッケージは多くの 類似した関数を提供していて、Postgresで 提供されているものの中にも他のものから影響を受けたものもあります。

4.1. 論理演算子

一般的に使用される理論演算子が使用できます。

AND
OR
NOT

SQLは「3値ブーリアン論理」を使用しており、NULLは "unknown"を示します。下記のテーブルを参照して下さい。

aba AND ba OR b
TRUE(真)TRUE(真)TRUE(真)TRUE(真)
TRUE(真)FALSE(偽)FALSE(偽)TRUE(真)
TRUE(真)NULLNULLTRUE(真)
FALSE(偽)FALSE(偽)FALSE(偽)FALSE(偽)
FALSE(偽)NULLFALSE(偽)NULL
NULLNULLNULLNULL

aNOT a
TRUE(真)FALSE(偽)
FALSE(偽)TRUE(真)
NULLNULL