סיכום
הוסף את התכונה החדשה של תוכנית ביצוע שאילתה של EstimateRowsWithoutRowGoal ל- SQL Server 2017 עדכון מצטבר 3 (CU3) ו- Microsoft SQL Server 2016 Service Pack 2 (SP2).
כאשר ממטב השאילתות מעריך את העלות של תוכנית ביצוע שאילתה, בדרך כלל הוא מניח שיש לעבד את כל השורות המתאימות מכל המקורות. עם זאת, שאילתות מסוימות גורמת למטב השאילתות לחפש תוכנית שתחזיר מספר קטן יותר של שורות מהר יותר. הדבר עשוי להתרחש אם השאילתה משתמשת במשפט TOP, ברמז לשאילתה FAST number_rows, במשפט IN או EXISTS או במשפט SET ROWCOUNT { number | @number\_var } . במקרה זה, המטב משתמש ביעד שורה כאשר הוא מעריך את תוכנית השאילתה. אם תוכנית מטרת השורה מוחלת, מספר השורות המשוער בתוכנית הביצוע של השאילתה מוקטן. זאת משום שהתוכנית מניחה שיש לעבד מספר קטן יותר של שורות כדי להגיע למטרה.
הערה ההערכה המתבצעת באמצעות מטרת השורה היא משוערת. אם התפלגות הנתונים בפועל אינה אחידה, ייתכן שהיא נמוכה ממספר השורות בפועל שיש לעבד. לכן, הוא יכול ליצור תוכנית שאילתה לא יעילה. כפתרון לבעיה זו, באפשרותך להשתמש באפשרות השאילתה USE HINT ('DISABLE_OPTIMIZER_ROWGOAL') או עקוב אחר דגל 4138.
לקבלת מידע נוסף, ראה עדכון מציג את ארגומנט הרמז לשאילתה USE HINT ב- SQL Server 2016. עם זאת, ייתכן שיהיה קשה לזהות בשאילתות מורכבות אם מטרת שורה מוחלת וכמה היא משפיעה על בחירת התוכנית.
על-ידי שימוש בתכונה EstimateRowsWithoutRowGoal , באפשרותך להשוות את התוצאות לאלה של התכונה EstimateRows כדי לראות כמה מטרת שורה משפיעה על הערכות של ממטב השאילתות.
הערה אם מטרת השורה אינה מוחלת על אופרטור מסוים של תוכנית שאילתה, תכונה זו אינה כלולה.
מידע נוסף
עדכון זה כלול בעדכון המצטבר הבא עבור SQL Server:
עדכון מצטבר 3 עבור SQL Server 2017
אודות עדכונים מצטברים עבור SQL Server:
כל עדכון מצטבר חדש עבור SQL Server מכיל את כל התיקונים החמים ואת כל תיקוני האבטחה שנכללו בעדכון המצטבר הקודם. עיין בעדכונים המצטברים האחרונים עבור SQL Server:
העדכון המצטבר האחרון עבור SQL Server 2017
מידע אודות ערכת Service Pack עבור SQL Server
עדכון זה הוצג בערכות ה- Service Pack הבאות עבור SQL Server:
Service Pack 2 עבור SQL Server 2016
Service Pack 3 עבור SQL Server 2014
אודות ערכות Service Pack עבור SQL Server:
ערכות Service Pack הן מצטברות. כל ערכת Service Pack חדשה מכילה את כל התיקונים הקיימים בערכות Service Pack קודמות, יחד עם כל התיקונים החדשים. ההמלצה שלנו היא להחיל את ה- Service Pack העדכני ביותר ואת העדכון המצטבר האחרון עבור ערכת Service Pack זו. אין צורך להתקין Service Pack קודם לפני התקנת ה- Service Pack העדכני ביותר. השתמש בטבלה 1 במאמר הבא לקבלת מידע נוסף אודות ה- Service Pack האחרון והעדכון המצטבר האחרון.
כיצד לקבוע את הגירסה, המהדורה ורמת העדכון של SQL Server ואת רכיביה
חומרי עזר
קבל מידע על המינוח שבו משתמשת Microsoft כדי לתאר עדכוני תוכנה.