517
צפיות
צפיות
1
תשובות
תשובות
אתגר? ברנדומליזציה. php+mysql
שלום לכולם ושבוע טוב!
מה תגידו על זה:
יש לי סקריפט שמראה שמות של אנשים המחולקים ל 4 קבוצות. כל שם של מישהו הוא לינק לחלק אחר בסקריפט, שמראה דף עם פרטים על הבן אדם.
כל האנשים היו בטבלה אחת במסד נתונים ולכל אחד היה ID ייחודי לו.
חלק ספציפי בסקריפט, נתן לי אופציה להשיג בן אדם רנדומלי (בדיקה כמה ID יש, ואז ביצוע פונקציה rand בין הID הכי נמוך, לID הכי גבוה)
עקב שדרוג הסקריפט, פיצלתי כל קבוצה לטבלה משלה במסד.
איך כדאי לי לבצע את פעולת הרנדומיזציה עכשיו?
אני מזכיר, הפעם אין לי טבלה אחת שממנה אני יכול לבצע RAND בין הID הקטן לגדול, אלא יש לי 4 טבלאות ויש בלאגן בין הIDים בכל הטבלאות.
תודה רבה לעוזרים!
1 תשובות
זו בנייה לא נכונה של המסד
ואם פתאום תרצה להוסיף קבוצה חדשה? אז תבנה עוד טבלה וגם עליה תבצע UNION (כמו שבטח היית עושה) ?
בגלל שקבוצה זו יישות צריך ליצור לה טבלה משלה שהיא תכיל: ID קבוצה, שם הקבוצה ועוד שדות אופציונליים כמו תיאור קבוצה…
בטבלת המשתמשים מוסיפים עמודה ID קבוצה שתשמש כמפתח זר(FK) מתוך טבלת הקבוצות.
שליפה לכל קבוצה בנפרד תיעשה ע"י WHERE idGroup=num
והבעיה עם הראנדומיזציה תיפתר ע"י חזרה לסקריפט הנוכחי (כדי להציג את שם הקבוצה אפשר להשתמש ב-JOIN)