01-09-2005, 06:05
|
מנהל פורומי "תכנות ובניית אתרים" ו"חומרה ורשתות"
|
|
חבר מתאריך: 25.10.01
הודעות: 42,775
|
|
השאילתא שלך עושה מיון או סינון על טבלה לפי מפתח שעליו אין אינדקס. זה אומר שכל פעם שהשאילתא רצה, MySQL צריך לסרוק את כל הנתונים בטבלה על מנת למיין או לסנן לפי החתך המבוקש. התוצאה היא בזבוז של הרבה זמן (אם הטבלה גדולה. מה זה גדולה? תלוי כמה חזק המחשב שלך ). ולכן מה שהוא מציע לך זה להשתמש בפקודה EXPLAIN על השאילתא כדי לראות היכן אין שימוש (וצריך להיות שימוש) באינדקס, שהיה חוסך זמן עיבוד רב, באופן כללי (יש מעט מקרים שבהם אינדקס מזיק, ואם תשאל מה המקרים האלה, התשובה היא שכשתגיע לפעולה מתקדמת עם ה-DB, אתה כבר תבין לבד, כי תדע איך אינדקס פועל...)
|