MySQL最適化LIMITページング
721 ワード
limitを使うときは簡単です
問題ない
しかし、时には私の時計の中にたくさんのデータがあります.どうすればいいですか?
どうしよう?
この時、columnが私たちがよく使うインデックスならまだしも、もし私たちがそうなら?
column 2はインデックスではなく、クエリが非常に遅くなるに違いありません.では、どうやって解決しますか.
この場合、すべてのカラムをクエリーするのではなく、インデックスを使用してスキャンを上書きし、必要に応じてすべてのカラムを返す関連付け操作を行う必要があります.
select * from table limit 1, 10;
select column1, column2, column3 from table limit 1, 10;
問題ない
しかし、时には私の時計の中にたくさんのデータがあります.どうすればいいですか?
select column1 from table limit 500000, 100;
どうしよう?
この時、columnが私たちがよく使うインデックスならまだしも、もし私たちがそうなら?
select column1, column2 from table limit 500000, 100;
column 2はインデックスではなく、クエリが非常に遅くなるに違いありません.では、どうやって解決しますか.
この場合、すべてのカラムをクエリーするのではなく、インデックスを使用してスキャンを上書きし、必要に応じてすべてのカラムを返す関連付け操作を行う必要があります.
SELECT
column1, column2, column3
FROM
table
INNER JOIN
(SELECT
column1
FROM
table
LIMIT 500000, 50) AS ood USING (column1);