שלח תשובה

זירת השאלות

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

אתגר? ברנדומליזציה. php+mysql

,‏ 18 בספטמבר, 2004

שלום לכולם ושבוע טוב!

מה תגידו על זה:
יש לי סקריפט שמראה שמות של אנשים המחולקים ל 4 קבוצות. כל שם של מישהו הוא לינק לחלק אחר בסקריפט, שמראה דף עם פרטים על הבן אדם.
כל האנשים היו בטבלה אחת במסד נתונים ולכל אחד היה ID ייחודי לו.
חלק ספציפי בסקריפט, נתן לי אופציה להשיג בן אדם רנדומלי (בדיקה כמה ID יש, ואז ביצוע פונקציה rand בין הID הכי נמוך, לID הכי גבוה)

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

תודה רבה לעוזרים!

תגיות:

1 תשובות

  1. ניר טייב הגיב:

    זו בנייה לא נכונה של המסד
    ואם פתאום תרצה להוסיף קבוצה חדשה? אז תבנה עוד טבלה וגם עליה תבצע UNION (כמו שבטח היית עושה) ?

    בגלל שקבוצה זו יישות צריך ליצור לה טבלה משלה שהיא תכיל: ID קבוצה, שם הקבוצה ועוד שדות אופציונליים כמו תיאור קבוצה…
    בטבלת המשתמשים מוסיפים עמודה ID קבוצה שתשמש כמפתח זר(FK) מתוך טבלת הקבוצות.

    שליפה לכל קבוצה בנפרד תיעשה ע"י WHERE idGroup=num
    והבעיה עם הראנדומיזציה תיפתר ע"י חזרה לסקריפט הנוכחי (כדי להציג את שם הקבוצה אפשר להשתמש ב-JOIN)

שלח תשובה