Bir Sql server veritabanındaki kayıtlarda float türünde olan iki tarih arasındaki kayıtları listeliyorum.
Sorguyu aşağdaki şekilde yaptığımda 15-20 sn içinde verileri getiriyor. Bu süre gayet makul db.vw_Gecmis_Adisyonlar.Where(tar => tar.AdsTarih >= 44835 && tar.AdsTarih <= 45198).ToList();
Fakat tarih değerlerini kullanıcının seçimine göre aşağıdaki gibi değişken ile listelemeye çalıştığımda sorgu anormal bir şekilde 3-5 dk yı buluyor. db.vw_Gecmis_Adisyonlar.Where(tar => tar.AdsTarih >= bastar && tar.AdsTarih <= bittar).ToList();
Bu durum neden kaynaklanabilir bir fikri olan var mı? bu arada kullanıcı tarih seçimine göre değişkene aktarma işleminde bir sorun yok, 1 sn olmadan o işlemi geçekleştiriyor.
Tarih kisminda between diyebilirsiniz , kullandiginiz sorguda kullanilan yüksek ihtimalle View , view in performans sorunu vardir. Ha paralel için de where şartindan sonra maxdop(16) ekleyebilirsiniz
Bir Sql server veritabanındaki kayıtlarda float türünde olan iki tarih arasındaki kayıtları listeliyorum.
Sorguyu aşağdaki şekilde yaptığımda 15-20 sn içinde verileri getiriyor. Bu süre gayet makul
db.vw_Gecmis_Adisyonlar.Where(tar => tar.AdsTarih >= 44835 && tar.AdsTarih <= 45198).ToList();
Fakat tarih değerlerini kullanıcının seçimine göre aşağıdaki gibi değişken ile listelemeye çalıştığımda sorgu anormal bir şekilde 3-5 dk yı buluyor.
db.vw_Gecmis_Adisyonlar.Where(tar => tar.AdsTarih >= bastar && tar.AdsTarih <= bittar).ToList();
Bu durum neden kaynaklanabilir bir fikri olan var mı? bu arada kullanıcı tarih seçimine göre değişkene aktarma işleminde bir sorun yok, 1 sn olmadan o işlemi geçekleştiriyor.