PostgreSQLにおけるUNIQUE制約とUNIQUE INDEXの違いとは?

今回はPostgreSQLにおけるUNIQUE制約とUNIQUE INDEXの違いについてご紹介いたします。



PostgreSQLにおけるUNIQUE制約とUNIQUE INDEXの違いとは?

結論から書きます。
両者に機能的な違いはありません。
パフォーマンスも同じなようです。

英語で書かれていますが、下記の記事が大変分かりやすかったです。
https://www.mssqltips.com/sqlservertip/4270/difference-between-sql-server-unique-indexes-and-unique-constraints/

UNIQUE制約とUNIQUE INDEXの違いといえば、書き方(CREATEやDROPの仕方)だけのようですね。

強いて言うなら、UNIQUE制約はindexと制約の両方に適用され、検索時のindexとして明示的に使われることが多いようです。
UNIQUE INDEXの方が検索時のindexとして明示的に使われるのではありません、UNIQUE制約の方が検索時のindexとして明示的に使われます。

ややこしいですね。

終わりに

今回はPostgreSQLにおけるUNIQUE制約とUNIQUE INDEXの違いについてご紹介いたしました。

最後までお読みいただきありがとうございます。
ブログやTwitterでのシェアOKです。
コメントもお待ちしております。
誤植や勘違いなどございましたらコメント欄にて教えていただけると幸いです。






PostgreSQL

Posted by ちこ