sql >> データベース >  >> RDS >> Mysql

possible_keysを使用しないSELECTステートメント

    MySQLクエリオプティマイザが正しく決定されたことを教えてくれます。

    これがあなたが言うことができる方法です。これらを実行します:

    行数

    SELECT COUNT(1) FROM issued_parts;
    

    クエリに一致する行の数

    SELECT COUNT(1) FROM issued_parts WHERE date_issued > '20100101';
    

    実際に取得している行数がテーブルの総数の5%を超える場合、MySQLクエリオプティマイザーは全表スキャンを実行する方が労力が少ないと判断します。

    たとえば、クエリがより正確だった場合は、次のようになります。

    SELECT * FROM issued_parts WHERE date_issued = '20100101';
    

    そうすれば、まったく別のEXPLAINプランを入手できます。



    1. MySqlと最後のIDの挿入の問題が残っています

    2. MySQLで1週間あたりの平均売上を計算する方法

    3. MacへのPostgreSQL用のPDOドライバーのインストール(Eclipse用のZendを使用)

    4. SQL Serverエージェント(T-SQL)でスケジュールのリストを取得する4つの方法