私のテーブルには、インデックスのない列がいくつかあります。これらの列の値の検索には、SQLite がテーブル全体をスキャンするため、非常に時間がかかる場合があります。
私の特定のケースでは、探している行 (値は一意です) は、ほとんどの場合、最後に挿入された行の中にあります。
スキャンを実行するときにSQLiteが最も古い(最初の)行から開始すると思われます.SQLiteにテーブルスキャンを逆の順序で実行するように指示する方法はありますか?
更新:変更ログでこれを見つけました:
オプティマイザーは、そうすることが ORDER BY ... DESC 句を満たす場合、逆方向にテーブルをスキャンするようになりました。
つまり、おそらくこれは、ORDER BY 句を追加して高速化できることを意味します。