約 2000 万行と 3 列のデータベースがあり、現時点ではインデックスなしでテストしています。私の選択ステートメントは次のようなものです:
SELECT *
FROM database
WHERE column COLLATE NOCASE IN ('expr1', 'expr2' .... up to 96 expressions)
すぐにcommand.ExecuteReader()
戻ってきて、コレクションをすぐに読むことができます。しかし、Read()
これ以上行を返さない最後のものは13秒かかります.これはなぜですか..? これはどうすれば改善できますか..?
using (SQLiteDataReader reader = command.ExecuteReader())
{
if(reader.HasRows)
{
while (reader.Read())
{
// READING DB DATA
}
}
}
編集: HasRows をループの外に移動しました