テーブルには、id(自動インクリメント)、userid(ユニーク、ssnなど)、ステータス(TINYINT(1)、0または1の値、NULLではない)、user_info varchar(1000))。ステータスに応じてWHEREのインデックスにあるインデックス
場合、私は、パフォーマンスを向上させるためにユーザーID列にインデックスを置く必要があります。リクエストの 30%は要求の
"SELECT user_info from Table1 WHERE userid='1234567'";
40%があるさ:リクエストの
"SELECT user_info from Table1 WHERE userid='1234567' AND status=0";
20%は次のとおりです。
"SELECT user_info from Table1 WHERE userid='1234567' AND status=1";
また、パフォーマンスを向上させるためのより良い方法があります(何とかステータス列の索引付け)?
(30%、40%、20%)ではなく実際に(9%、90%、1%)に変更する必要がありますか? ありがとうございます。
"userid"のようなテーブル名は、その列が(Userテーブルのidフィールドに)外部キーであることを意味します。 InnoDBテーブルで外部キーとして定義した場合、自動的にインデックスが作成されます。 http://stackoverflow.com/questions/304317/does-mysql-index-foreign-key-columns-automaticallyインデックスFKの程度 良い情報: http://asktom.oracle.com/pls/apex/f≦p = 100:11:0 :::: P11_QUESTION_ID:292016138754 – OpenSorceress