שלח תשובה

זירת השאלות

676
צפיות
1
תשובות

SQL View

,‏ 22 באפריל, 2004

יש לי טבלת VIEW עם 2 עמודות:
שם קבוצה והסכום הכולל של כל קבוצה
המסודרת לפי הסכום הכולל מהגבוה לנמוך.
וברצוני לדעת באיזה מקום ממוקמת קבוצה מסויימת שמופיעה בטבלה זו.
רצוי לציין שב – VIEW זה ישנם כ-10000 רשומות.

תגיות:

1 תשובות

  1. תלוי
    תראה, אם אתה יכול להוסיף עוד עמודה של AutoNumber – אז אתה יכול פשוט לפתוח שאילתא, לבחור את הקבוצה המסויימת, ולבדוק מה המספר של הרשומה ב-AutoNumber.
    שים לב שאם אתה מוחק רשומה באיזה שהוא שלב – זה פחות או יותר ידפוק לך את העסק, כך שזה טוב רק אם אין לך מחיקות של רשומות.

    אופציה נוספת על אותו רעיון היא לעשות עמודה עם מספר שורה שאת המספר *אתה* תעדכן בכל פעם שאתה מוסיף רשומה. כך אם מחקת קבוצה מהאמצע את יכול לעשות לולאה שתמספר את הכל מחדש.

    אופציה אחרונה שקופצת לי לראש היא פשוט לעשות לולאה שתרוץ על כל הטבלה הזאת, כאשר כל פעם אתה מגדיל משתנה כלשהוא ב-1, עד שאתה מגיע לרשומה המתבקשת, וכך אתה יודע את מיקומה בטבלה… אם אתה מחליט ללכת על האופציה הזאת – מומלץ שתשתמש במערך getRows (יש הסבר במאמרים על שימוש בזה), כך שלא תרוץ על הרקורד עצמו – אלא על מערך (יותר יעיל).

    איך לבחור באיזה אופציה? מאוד תלוי באופי האפליקציה.

    תשאל את עצמך: מה צפוי לקרות יותר – יותר פעמים יוזנו/ימחקו קבוצות מהטבלה – או יותר פעמים יבצעו חיפוש על מיקום של קבוצה בטבלה?

שלח תשובה