タグ

mysqlとexplainに関するgirledのブックマーク (1)

  • MySQLで降順(DESC)にデータを取得したいが、filesortはさせたく無い時の方法 - Web系エンジニアbcoのメモ帳

    “降順(DESC)の インデックス だけどfilesortを出したくないとき 上記の SQL 、実際に数万件以上のデータで試してみればわかりますが、EXPLAINで分析すると、using filesortがでます。 これは実は簡単な話で、実際には インデックス にDESCを指定しても、無視して ASC で インデックス を作成しているからです。来であれば、並べ替えにも インデックス が使われるはずが、 インデックス の並び順が ASC なので、各 レコード のデータを読み込んで ソート します。この時に、一時ファイルを使って ソート を行っているのですが、これがusing filesortの正体です。 つまり、using filesortが出ているということは ソート に インデックス が使われていないことを意味します。 しかし、 SNS における日記や伝言板、ミニメールなど、扱うデータ

    MySQLで降順(DESC)にデータを取得したいが、filesortはさせたく無い時の方法 - Web系エンジニアbcoのメモ帳
    girled
    girled 2015/07/14
    裏ワザ感がワクワクする話。MySQLはこういう突っ込んだ情報までもネットで手に入るのが魅力。
  • 1