הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   שאלה בנושא בסיסי נתונים הפעולה RAND (https://hosts.co.il/forums/showthread.php?t=87374)

gillllll 12-01-11 16:06

שאלה בנושא בסיסי נתונים הפעולה RAND
 
רציתי לדעת ממישהו שמבין בעניין, האם הפעולה order by RAND() LIMIT 10
באתר היא פעולה שנחשבת מעמיסה?
שמתי לב שלוקח לדף שלי להטען יחסית קצת יותר זמן ולכן חשבתי שבמידה ויהיה עומס על הדף זה יפגע לי משמעותית בביצועי בסיס הנתונים.
(אני משתמש ב MYSQL)

האם זה נכון?

Shay Ben Moshe 12-01-11 16:11

זו נחשבת פעולה מאוד מאוד איטית כיוון שהיא מייצרת טבלאות זמניות במהלך הריצה.
במקום זה, עדיף להשתמש בפתרונות אחרים, קרא את המאמר הבא:
http://akinas.com/pages/en/blog/mysql_random_row/

IgalSt 12-01-11 18:38

אפשרות נוספת שהשתמשתי בה ב-showme כשהוא עדיין היה קיים,
זה לשלוף אחת לכמה דקות את התוכן למשתנה application (ב-ASP, בטח יש משהו דומה גם ב-PHP) ולהציג רשומה רנדומלית כאשר כל פעם פשוט מציגים תא שונה במערך.
סוג של קאשינג לתוצאות של השאילתה

gillllll 12-01-11 19:11

תודה רבה.
 
השתמשתי בפתרון הרביעי שהוא הציע באמצעות שורת ה SQL.


כל הזמנים הם GMT +2. הזמן כעת הוא 08:05.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ