/ / MySQLの複数のフィールドインデックスは良い選択ですか? - mysql、sql、データベース、パフォーマンス、インデックス作成

MySQLの複数のフィールドインデックスは良い選択ですか? - mysql、sql、データベース、パフォーマンス、インデックス作成

私は巨大なデータセットを持っています。構造は次のようになります。

K_Field1, K_Field2, K_Field3, K_Field4, D_Field5, D_Field6, D_Field7, D_field8

問題は、最初の4つのフィールド(K_Field1,K_Field2,K_Field3,K_Field4)一緒に一意に行を識別します。これらのフィールドをフィールドとして使用して1つのテーブルを作成しました。

テーブルに100万行ありますその構造を使用します。新しいレコードをインポートする場合は、データベースに既に存在するかどうかを判断する必要があります。存在する場合は更新しなければならない場合は、新しい行を挿入する必要があります。

これを行うには、私は複数のフィールドインデックスを配置する必要があります最初の4つの列には - 私は恐怖です - 最高の解決策ではありません。そのデータを格納および検索するためのより良いデータベース構造がありますか、または4フィールドインデックスで暮らす必要がありますか?

私はMySQLを使用しています

回答:

回答№1は5

最初の4つの列にインデックスを作成することには何も問題はありません。

create unique index mytable_key on mytable(K_Field1,K_Field2,K_Field3,K_Field4);

それがあなたの状況の現実だからです。

それはまた、 "正しい"解決策です。