1. ホーム
  2. sql

[解決済み】Eメールアドレスを主キーにする?

2022-04-03 08:34:11

質問

メールアドレスは、オートインクリメントの数字と比較すると、一次候補としては不利でしょうか?

私たちのWebアプリケーションでは、電子メールアドレスがシステム内で一意であることが必要です。そこで、メールアドレスを主キーにしようと考えました。しかし、私の同僚は、文字列の比較は整数の比較よりも遅くなると提案しています。

主キーにemailを使用しない正当な理由があるのでしょうか?

私たちは PostgreSQL .

解決方法は?

文字列の比較は、int型の比較よりも遅いです。しかし、単にメールアドレスを使用してデータベースからユーザーを取得する場合は、これは問題ではありません。しかし、複数の結合を含む複雑なクエリを実行する場合は問題です。

ユーザーに関する情報を複数のテーブルに格納する場合、usersテーブルの外部キーはメールアドレスになります。つまり、電子メールアドレスを複数回保存することになります。