דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. שאלה בסיסית באינדוקס מסד נתונים

שאלה בסיסית באינדוקס מסד נתונים

מתוזמן נעוץ נעול הועבר תכנות
2 פוסטים 2 כותבים 79 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • מנצפךמ מנותק
    מנצפךמ מנותק
    מנצפך
    כתב ב נערך לאחרונה על ידי
    #1

    אם אני צריך לגשת הרבה לטבלה, והתנאי חיפוש הוא לפי שתי שדות.
    כלומר אני מחפש רשומות ששתי שדות בהן מתאימות לתנאים שלי (מסוג Int).

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

    OdedDvirO תגובה 1 תגובה אחרונה
    1
    • OdedDvirO מנותק
      OdedDvirO מנותק
      OdedDvir
      השיב למנצפך ב נערך לאחרונה על ידי OdedDvir
      #2

      @מנצפך שאלה בסיסית, והתשובה מורכבת.
      אינדוקס נכון הוא אחת המלאכות המאתגרות בבסיס נתונים.

      התשובה הזהירה שלי היא שזה תלוי באופי של המערכת, ובמבנה השאילתות הנפוצות שלך, מה מופיע בתנאי WHERE ו-GROUP BY.

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

      הנה הסבר קצר על העניין: https://use-the-index-luke.com/sql/where-clause/the-equals-operator/concatenated-keys

      והנה תשובה מפורטת מסטאק: https://stackoverflow.com/a/179224

      תגובה 1 תגובה אחרונה
      5

      בא תתחבר לדף היומי!
      • התחברות

      • אין לך חשבון עדיין? הרשמה

      • התחברו או הירשמו כדי לחפש.
      • פוסט ראשון
        פוסט אחרון
      0
      • דף הבית
      • קטגוריות
      • פוסטים אחרונים
      • משתמשים
      • חיפוש
      • חוקי הפורום