sql >> Databasteknik >  >> RDS >> Sqlserver

SQL Server:OM FINNS saktar ner en fråga kraftigt

Testade du att köra den ursprungliga frågan med TOP 1? mest troligt kommer det att gå lika långsamt.

Ibland när optimeraren tror att något är mycket troligt och kommer att returnera en stor uppsättning data med liten ansträngning (dvs nästan alla poster kommer att returneras), väljer den mest loop-anslutningar eftersom den bara behöver få den första och en loop join är bra för att bara få ett par skivor. När det visar sig inte vara sant tar det en evighet och en dag att få resultat.

I ditt fall låter det som att det är väldigt sällsynt, så det här valet gör väldigt ont. Försök istället att göra något som SELECT @count = COUNT(*) FROM ... och kontrollera sedan om siffran inte är noll.



  1. Hur frågar man postgres på valfria parametrar?

  2. mysql:Vad är rätt syntax för NOT LIKE?

  3. SQL Server SELECT INTO @variable?

  4. Datatyp för att lagra longitud/latitud i Mysql