end0tknr's kipple - 新web写経開発

http://d.hatena.ne.jp/end0tknr/ から移転しました

CREATE TABLEのunique制約において「NULL」は例外で複数レコードで持てる

http://www.dbonline.jp/postgresql/table/index5.html

今更、知りました。

「UNIQUE」制約は、制約が設定されたカラムに同じ値を持つ事が出来ないようにしますが、「NULL」は例外で複数行で持つ事ができます。
「NULL」も複数持つ事が出来ないようにする場合は「NOT NULL」制約を合わせて設定して下さい。

mysqlもpostgresも同様みたい。