私は非常に大きなテーブルに対してこのクエリを実行しています(おそらく150〜200 000行程度):
select count(Distinct(eti.Email)) FROM table1 eti
LEFT OUTER JOIN table2 ti on ti.Email = eti.Email and ti.SiteId = eti.Site_Id
WHERE eti.Site_Id=1
SMMS (SQL Server Management Studio) では実行に 1 秒もかかりませんが、ASP.NET サイトから実行しようとするとタイムアウトになります。
私は PetaPoco を使用して、「フードの下で」このコードを実行するデータを取得しています。
using (var cmd = CreateCommand(_sharedConnection, sql, args))
{
object val = cmd.ExecuteScalar();
OnExecutedCommand(cmd);
return (T)Convert.ChangeType(val, typeof(T));
}
SSMSがクエリを実行するときにいくつかの「特別な設定」があることについて読んだことがありますか? 私は本当にこれを稼働させる必要があります。
接続の「MARS」設定がこれに影響を与える可能性はありますか? 問題をデバッグして見つけるにはどうすればよいですか?
ありがとう!