
17-12-2007, 03:58
|
|
|
|
חבר מתאריך: 25.08.03
הודעות: 9,114
|
|
לכל דבר ישנן מספר דרכים, אך נתחיל מהפשוטה שעוהל לי ברשא בלי לחשוב יותר מדי ומה שאציע ממש לא בהכרח הדרך היעילה והמומלצת יותר.
אם ברצונך לאחסן את 10 ה"צופים" האחרונים, תיצור טבלת "צופי פרופיל" המכילים את השדות הבאים:
1. כמובן קוד זיהוי לרשומה.
2. מזהה של הפרופיל הנצפה.
3. מזהה של המשתמש הצופה.
4. תאריך צפיה.
כפי שהזהרתי בתחילה, זו הדרך שעולה לי לראש תוך כדי כתיבה, אך לא בהכרח המומלצת ולו בגלל פעולת העדכון שאנסה לחשוב עליה ברפרפוף בפיסקה הבאה.
אם ברצונך לאחסן רק את עשרה הצופים האחרונים, עליך לבדוק לצורך עדכון האם כבר קיימים עשר רשומות צפיה עבור המזהה שנצפה ובהתאם לכך להסיר את הצופה האחרון ולעדכן/להוסיף רשומת צפיה עדכנית. אחרת, אין צורך לבצע בדיקה אלא תמיד להוסיף "רשומת צפיה" חדשה ובשליפה לשלוף רק את מספר הצפיות האחרונים בהתאם למספר שתרצה (במקרה שלך, עשרה צופים אחרונים).
שאילתת שליפה לדוגמה:
המשתמש בעל קוד זיהוי (id)י 84 רוצה לראות את העשרה הצופים האחרונים בפרופיל שלו:
קוד:
SELECT watcher FROM watchers WHERE watched=84 ORDER BY watch_date DESC TOP 10
זה כמובן ישלוף רק את קוד הזיהוי של ה"צופים", על מנת לשלוף את שמות המשתמש שלהם, תצטרך לבצע JOIN עם טבלת המשתמשים.
|