לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #7  
ישן 12-03-2007, 13:34
  גורי שי גורי שי אינו מחובר  
 
חבר מתאריך: 10.03.07
הודעות: 28
אני לא מסתדר עם השאילתה
בתגובה להודעה מספר 4 שנכתבה על ידי DCD שמתחילה ב "אז תאסוף את כל הנתונים בדרך..."

עוד פעם שלום,
ראשית , לא שמתי לב שגם אתה DCD ענית לי , אז - תודה רבה לך על התשובה !

אוקיי,
אני לא רוצה להציק אבל חרשתי על כל הנושא הזה
בכל האתרים שהבאתם , בגוגל , בדקתי וקראתי אבל , אני לא מצליח לעשות את מה שאני צריך.

אני אנסה להסביר את עצמי שוב אולי לא הסברתי את עצמי כמו שצריך ;
יש לי מס' גדול של טבלאות (יותר מ-80) שבכל אחת מהן יש את העמודות Type , Content וDate.
אני צריך לשלוף את כל השורות מכל הטבלאות שבהן יש בעמודה Type את הערך Massage ושהנתונים יסתדרו ע"פ הערך שכתוב ב-Date.

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

איך עושים את זה ?

הערות :

א. אינני יכול להשתמש בUNION משום שמס' הטבלאות והשמות שלהם עתידים להשתנות מפעם לפעם. והקוד חייב להיות דינאמי ולהתאים את עצמו לכל המצבים.

ב. ניסיתי להשתמש בPHP באמצעות 2 פקודות לופ (while) , כלומר ; פקודה אחת עוברת על כל הטבלה וטבלה , הפקודה השנייה נמצאת בתוכה ובודקת כל שורה ושורה. מה הבעיה עם זה ? שסדר הנתונים שלי יהיה ע"פ Date אבל, פר שורה ולא פר כל הנתונים.

להזכרם , אני מחפש אפשרות לשלוף את כל הנתונים האלה בבת-אחת ולסדר אותם ע"פ Date פר כל הנתונים.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #10  
ישן 13-03-2007, 02:01
  ישראל K ישראל K אינו מחובר  
 
חבר מתאריך: 25.08.03
הודעות: 9,114
בתגובה להודעה מספר 9 שנכתבה על ידי גורי שי שמתחילה ב "קודם כל תודה רבה על התשובה."

יתכן ש'שגרה מאוחסנת' (Stored procedure) תענה לך על הדרישה בצורה היעילה ביותר, אך לעת עתה, היות וניכר שאין לך מספיק היכרות עם מסדי נתונים אציג כיוון פשוט יותר.

בדרך הקודמת שפעלת, אתה מריץ קרוב למעלה מ-80 שאילתות, שזה בהחלט דבר מטורף וכלל לא בא בחשבון (בהתחשב בזה שיש לך למעלה מ-80 טבלאות, מה גם שבקצב הזה זה גם יכול להיות 200, 500 או יותר).
בדרך הבאה תדרש לכל היותר 3 שאילתות.
1. שאילתת SHOW TABLES על מנת לשלוף את רשימת כל הטבלאות שבאמצעות קוד בשפת תסריט כלשהוא (PHP - במקרה שלך) תשורשר ותיצור את השאילתה הבאה.
2. שאילתת CREATE VIEW היוצרת "טבלה" חדשה באמצעות שאילתת SELECT ... UNION ALL
3. שאילתת SELECT רגילה שתמיין את הנתונים לפי התאריך.

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

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 21:25

הדף נוצר ב 0.05 שניות עם 12 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר