konto usunięte

Temat: MS SQL: SQL Server Managment Studio 2014

Witam,
mam pytanie odnoście narzędzia SQL Server Management Studio w wersji 2014,
dokładnie chodzi o funkcjonalność Display Estimated Execution Plan.
Czy różne wartości w zapytaniu którego efektem jest zwrócenie różnej ilości rekordów ma wpływ na jego wynik?

konto usunięte

Temat: MS SQL: SQL Server Managment Studio 2014

No cóż.
Wydaje mi się, że zawsze wartości wzięte do analizy mają wpływ na wynik... :)
Może sprecyzuje Pan pytanie (warto jeszcze wziąć pod uwagę to co zapisane jest po magicznym słowie WHERE i jak wyglądają indeksy do tabel biorących udział...)?Ten post został edytowany przez Autora dnia 29.03.17 o godzinie 15:02

konto usunięte

Temat: MS SQL: SQL Server Managment Studio 2014

...
WHERE ((DATAAREAID=?)
AND ((INVENTTRANSID=?)
AND (ITEMID=?)))
ORDER BY A.DATAAREAID,A.INVENTTRANSID OPTION(FAST 1)

na tabeli jest 7 indeksow
field name, data type, size, identity, allow nulls

DATAAREAID nvarchar(4) 8 No No
INVENTBATCHID nvarchar(20) 40 No No
INVENTTRANSID nvarchar(20) 40 No No
PANELROUNDING numeric(28,12) 13 No No
.
DATAAREAID nvarchar(4) 8 No No
PANELORGREFRECID bigint 8 No No
.
DATAAREAID nvarchar(4) 8 No No
INVENTTRANSID nvarchar(20) 40 No No
.
DATAAREAID nvarchar(4) 8 No No
PRODINVENTTRANSID nvarchar(20) 40 No No
PANELDIMSPECINVENTTRANSID nvarchar(20) 40 No No
UNDERCUTTYPEID nvarchar(1) 2 No No
PANELLENGTH int 4 No No
.
DATAAREAID nvarchar(4) 8 No No
QUOTATIONINVENTTRANSID nvarchar(20) 40 No No
.
DATAAREAID nvarchar(4) 8 No No
RECID bigint 8 No No
.
DATAAREAID nvarchar(4) 8 No No
SALESID nvarchar(20) 40 No No
INVENTTRANSID nvarchar(20) 40 No No
PACKNO int 4 No No

konto usunięte

Temat: MS SQL: SQL Server Managment Studio 2014

Jeżeli chce się Pan przekonać/poznać odpowiedź na swoje pytanie proponuję , dla różnych warunków WHERE przeprowadzić kilka testów próbując wymusić by SELECT na pewno przyjął trzeci indeks jako prowadzący (dając klauzulę (USING <nazwa_trzeciego_indeksu>.
Różnice w czasie powinny być wtedy niewielkie...
(po prosu nie zawsze wierzę "automatom" optymalizacyjnym)
Adam Stawiński

Adam Stawiński Programista SQL,
specjalista ds.
optymalizacji kodu
MS SQL

Temat: MS SQL: SQL Server Managment Studio 2014

Nie wpływa na wynik. Estimated Execution Plan pokazuje liczby rekordów na podstawie danych zawartych w statystykach, które mogą być nieaktualne. Wpływa na wybór lepszego lub gorszego planu wykonania czyli na końcu może wpłynąć na wydajność zapytań. Należy zaktualizować statystyki z próbkowaniem 100 % czyli UPDATE STATISTICS nazwa_tabeli WITH FULLSCANTen post został edytowany przez Autora dnia 02.12.17 o godzinie 12:28



Wyślij zaproszenie do