(@PaymentId int)
returns int
as
begin
Declare @viewedCount int
Select @viewedCount = Count(OtSrno)
From OtTendersViewDetail
Where OTPaymentId = @PaymentId
And OTPaymentId is not null
return (@viewedCount)
end
-8
A
Antwort
0
Optimieren ist normalerweise etwas, was Sie für komplexe Operationen tun - dieses aus reinem SQL ist so gut wie es geht.
Was Sie tun können, ist "mit Neukompilieren" oder "Optimieren für unbekannt", um Parameter-Sniffing zu vermeiden - was bedeutet, Abfragepläne erneut zu verwenden.
Was Sie auch tun können (was besser ist) ist zu prüfen, ob OTPaymentId null ist und wenn/sonst zwischen 2 verschiedenen Select-Anweisungen. Auch hier geht es um die Wiederverwendung von Abfrageplänen/das Festhalten an einem fehlerhaften Abfrageplan.
Optimieren? Was ist der Flaschenhals? –
Fügen Sie einen Index auf OTPaymentId hinzu und zählen Sie ihn anstelle von OtSrno – sagi
, wie Sie den Index auf OTPaiditionId hinzufügen und ihn anstelle von OtSrno zählen. – Rushang