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

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

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

mysql סינון בטבלה מרובת שורות

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

    יש לי טבלה של מענה על מבחנים שנכון לרגע תחילת כתיבת הפוסט עומד ב 9205714 שורות.
    בטבלה נשמרים פחות או יותר, עמודת מזהה (A I), זהות, תאריך, מזהה מסלול, ושאר הפרטים כתאריך שעה ומה הקיש וכו.
    ב"ה האינדקסים בסדר, אין בעיות בסינון ושליפה לפי תאריך ולפי מסלול.
    יש לי גם עמודה בשם "ProjectID" שכל עוד יש רק פרוייקט אחד בטבלה זו אני לא אמור לסנן על פיה.
    פה ושם עלו בקשות לבנות תוכנית מקבילה, ואז בעצם אני יצטרך להתחיל לסנן גם לפי העמודה ProjectID (שהיא עמודת varchar(25)).
    הבעיה היא שכשניסיתי לחבר בממשק שמציג את הטבלה שיסנן גם את העמודה ProjectID לפי הלקוח המחובר, אז זה היה סיוט, הCPU השתולל ולקח המון זמן.
    למרות שעשיתי עליו אינדקס (וס"ה כל הטבלה הייתה באמת אותו פרוייקט).
    אציין שבממשק בכל הצגה של טבלה מבוצעים 2 שאילתות, א. שליפת השורות עם limit 2000 ב. שליפת count של כל השורות שעונות לסינון הנוכחי.
    אני לא יודע להגיד כ"כ באיזה מהם הייתה הבעיה, אבל מה שבטוח שזה גרם להשתוללות CPU ואיטיות המערכת.
    יש מצב ודרך איך להתמודד או שאהיה מוכרח לפתוח טבלה נפרדת לכל לקוח?
    תודה
    נ.ב. נכון לסיום הכתיבה זה כבר עלה ל 9205912

    nigunN תגובה 1 תגובה אחרונה
    0
    • nigunN מנותק
      nigunN מנותק
      nigun
      השיב לחוקר ב נערך לאחרונה על ידי
      #2

      @חוקר
      שאלת תם
      למה לא לעשות כל פרוייקט בטבלה אחרת?

      מייל: nigun@duck.com

      ח תגובה 1 תגובה אחרונה
      0
      • ח מנותק
        ח מנותק
        חוקר
        השיב לnigun ב נערך לאחרונה על ידי
        #3

        @nigun אמר בmysql סינון בטבלה מרובת שורות:

        @חוקר
        שאלת תם
        למה לא לעשות כל פרוייקט בטבלה אחרת?

        הפרוייקט מורכב מ 20/30 טבלאות (מסלולי לימוד/ מנויים/ השאלות והתשובות/זוכים וכו')
        הכי קל בכל טבלה יש עמודה מזהה פרוייקט ואז ללא שום בעיה אתה מוסיף פרוייקטים כרצונך ללא שום עבודה של הקמת טבלאות לכל פרוייקט.
        בנוסף, אני משתמש בממשק CRUD שבנוי מפריימורק PHP בשם YII2, שם יש להקים מודלים לכל טבלה, ואני חוסך את זה כשכולם מחוברים לאותו מודל יחיד לכל טבלה.
        ואפילו בפרוייקט של 2 טבלאות זה מה שהייתי עושה.
        דוגמא פרקטית: במערכות שבניתי כעת לתתים וישיבות יש פחות מ20 טבלאות.. בשיטה שלי, להוסיף לקוח חדש זה ס"ה שורה נוספת בעמודה פרוייקטים, וב"ה יש הרבה לקוחות שם.. אם הייתי מתעסק לכל אחד להקים טבלאות, אוי ואבוי..

        תגובה 1 תגובה אחרונה
        1
        • dovidD מנותק
          dovidD מנותק
          dovid ניהול
          כתב ב נערך לאחרונה על ידי
          #4

          תכתוב שאילתה כזו בphpmyadmin, ובדוק את הexplain שלה.

          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

          בכל נושא אפשר ליצור קשר dovid@tchumim.com

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

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

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

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