HAVING を使用するのではなく
        LIMIT row_count
        を使用している場合、MySQL
        によるクエリの処理方法が異なる場合があります。
      
            LIMIT
            を使用して数レコードしか選択していないと、フルテーブルスキャンが行われそうな場合に、MySQL
            はインデックスを使うことがある。
          
            ORDER BY とともに LIMIT
            row_count を使用している場合、MySQL
            ではすべてのテーブルがソートされるのではなく、最初の
            row_count
            レコードの検索が行われた時点でただちにソートを終了する。
          
            LIMIT row_count を
            DISTINCT
            とあわせて使用した場合、MySQL は一意の
            row_count
            行のレコードを検索するとただちに停止する。
          
            GROUP BY
            がキーを順番に読む(またはキーのソートを実行して読む)ことで解決でき、キーの値が変わるまで
            サマリが計算される場合もある。この場合、LIMIT
            row_count では不要な GROUP
            BY
            値の計算がすべて行われなくなる。
          
            MySQL が最初の #
            レコードをクライアントに送信すると、クエリが中止される(SQL_CALC_FOUND_ROWS
            を使用していない場合)。
          
            LIMIT 0
            は常に迅速に空のセットを返す。これは、クエリのチェックおよび結果として返るカラムのカラム型の取得に役立つ。
          
            サーバでテンポラリテーブルを使用してクエリが解決される場合、LIMIT
            row_count
            が必要な領域の計算に使用される。
          
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.

