ציטוט:
נכתב במקור על ידי luckyguy
מה השאילתה לקבלת מיקום הרשומה בטבלה?
|
תספור כמה רשומות יש מעל הרשומה הזו בטבלה.
הדרך היעילה ביותר (אולי אפילו היחידה) לבצע אותה ב-SQL סטנדרטי.
הכוונה היא לשאילתה כגון:
קוד:
SELECT COUNT(*) FROM table WHERE key >= 'mykey'
אם יש אינדקס על key אז דטבייס נורמלי יכול לתת מענה לשאילתה לפי מידע סטטיסטי שהוא שומר מבלי לבצע סריקה של האינדקס (או הטבלה).
אם הוא צריך להריץ שאלתות כאלה דרך קבע עדיף להחזיק שדה position כחלק מהטבלה ולחשב אותו בעת עדכון הנתונים (קל ליישום כ-trigger).