פורסם 2011 בספטמבר 414 שנים שלום (: אני מלמד את עצמי PHP שאני כל כך אוהב , ואני בונה לעצמי פרוייקט בסיס נתונים של סרטים שיש לי או שראיתי. ואז נתקלתי בבעיה, שלא יכולתי לפתור לבד, מקווה שתוכלו לעזור לי. אז ככה, כל קטגוריה אצלי מיוצגת על ידי ID למשל Action=1, Comedy=5, Thriller=25 כשאני בוחר לקטלג סרט בקטגוריות מסוימות אני מכניס לתוך field הנקרא "genre" הנמצא בתוך טייבל "movie" הוא מכיל את ה id's שמייצגים את הקטגוריות. ואז באתי לבנות פונקציה באתר שלי שאם אני לוחץ על לינק של קטגוריה, לפי ה ID שלו הוא יעשה שאילתה מתוך ה קטגוריה ויציג לי את כל הסרטים בקטגוריה גירסה מקוצרת של ה table. אני לא יודע אם אני הכי ברור, ניסוח לא הצד החזק שלי. דוגמאות: חשבתי שאני אוכל לעשות כזה דבר SELECT * FROM movie WHERE genre = 5 השאליתה הזאת תחזיר לי רשומה רק אם בתוך ה ג'נר יש 5 אבל אם למשל יש גם 9 זה לא יחזיר כלום.. הגיוני.. אז ניסיתי כזה דבר SELECT * FROM movie WHERE genre LIKE '5' אותה תוצאה אז ניסיתי כזה דבר SELECT * FROM movie WHERE genre LIKE '5%' ושוב אותה תוצאה... ואז ניסיתי כזה דבר SELECT * FROM movie WHERE genre LIKE '%5%' זה החזיר לי את כל השדות שיש ב 5, אבל אם יש גם 9.. הבעיה נוצרה שהוא החזיר לי שדאות שאין בהם את רק את הספרה הבודדת "5" אלא גם שדות "25" אני מבין למה זה קורה מחזיר כל דבר שיש %5% מחזיר כל דבר שיש בו 5. ניסיתי עוד משהו שבכלל לא פעל, וקראתי על זה כנראה שזה באמת לא פועל משום מה SELECT * FROM movie WHERE genre LIKE '[25]' זה בכלל לא מחזיר כלום, אבל עם תוספות ווילדקארד השאלה איך אני יכול לשלוף רשומה שיש בה 5 וגם בנפרד 9 או כל ספרה אחרת.. יכולתי לעשות שבתוך הסרט אשמור את ה string של הקטגרויות, אבל רציתי שזה יהיה דינמי יותר, וכל קטגוריה תיוצג על ידי ID שאם יום אחד אצטרך לשנות משהו, אוכל לשנות את זה במקום אחד, ולא ידנית בכל רשומה ורשומה. השאלה אם בניתי את בסיס הנתונים שלי נכון? אם שיטת השליפה שלי נכונה? חשוב לציין שאת השאילתות עשיתי ב phpmyadamin ו mysql console לא שזה אמור לשנות. ושוב, אני מקווה שהייתי ברור.. ואני מקווה שצילומי מסך יעזרו להבין מה אני רוצה.. תודה מראש.
פורסם 2011 בספטמבר 414 שנים אתה יכול להשתמש בטבלת עזר שממפה סרטים לז'אנרים. לטבלה יהיו בדיוק שתי עמודות - עמודה אחת של מספר סרט ועמודה אחת של ז'אנר, וכל סרט יוכל להופיע כמה פעמים (פעם אחת עבור כל ז'אנר שמשויך אליו).בשביל לשלוף את כל הסרטים השייכים לז'אנר מסוים, רק צריך join אחד.
פורסם 2011 בספטמבר 414 שנים מחבר אתה יכול להשתמש בטבלת עזר שממפה סרטים לז'אנרים. לטבלה יהיו בדיוק שתי עמודות - עמודה אחת של מספר סרט ועמודה אחת של ז'אנר, וכל סרט יוכל להופיע כמה פעמים (פעם אחת עבור כל ז'אנר שמשויך אליו).בשביל לשלוף את כל הסרטים השייכים לז'אנר מסוים, רק צריך join אחד.תודה רבה אחלה פתרון, עזר לי מאוד.
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.