-1

select *from REPT_AIR_PRY_HY1 RAP where (RAP.DATE_OF_ISSUE) BETWEEN "2017-10-01" AND DATE_ADD("2017-10-31", INTERVAL 1 DAY)

このクエリの説明計画では337243 が得られますが、これらの日付の間のデータは55209しかなく、列 DATE_OF_ISSUE にインデックスが作成されることさえあります。では、なぜテーブル全体をスキャンしているのでしょうか? 前もって感謝します

4

1 に答える 1

0

いくつかの可能性:

  • オプティマイザーは、テーブルのかなりの割合が必要になると (正しくても正しくなくても) 考えます。テーブルには何行ありますか?
  • MyISAM を使用しています。InnoDB に切り替えます。
  • 何らかの理由で、「統計」が古くなっています。してくださいANALYZE TABLE

さらに議論するには、 を提供してくださいSHOW CREATE TABLE

于 2018-03-03T01:55:50.673 に答える