2017-08-11 1 views
0

Ich habe eine Ansicht mit 10 Spalten und es hat eine Spalte CustomerType des Datentyps int und die eindeutigen Werte für diese Spalte sind 2 und 10. Wenn ich mit Wert als suchen 2, gibt es mir ein Ergebnis mit 15000 Aufnahmen in 6 Sekunden. Das Problem ist jedoch, wenn ich mit Wert als 10 suche, dauert es 1 Minute und 43 Sekunden, um 3500 Datensätze zu holen. Was sollte der Grund sein und wie kann man es lösen?SQL Server-Ansicht reagiert anders auf Suchwert in where Bedingung

PS: Es gibt keine andere schließt sich abgesehen von VIEW_NAME und wo nur eine Bedingung als

Select Name, Code 
From CustomersView 
Where CustomerType = 10 
+2

Es ist nicht möglich, eine Frage wie diese zu beantworten, ohne mehr über Ihre Umgebung zu erfahren. Auf kurze Sicht empfehle ich dringend, beide Abfragen von Management Studio auszuführen und ihre Abfragepläne zu überprüfen. Andernfalls teile bitte die Struktur der Ansicht. – Greenspark

Antwort

0

Es hat muss ein Index für die Spalte, die das schnelle Ergebnis zurückgibt .. kann sein Customer.

Bitte senden Sie den Code der Sicht und die Abfrage, die Sie für die Sicht schreiben möchten. Mit der Zeit, die es brauchte, um das Ergebnis zurückzugeben.

Das Absenden des Abfrageplans ist auch hilfreich