24-10-2012, 12:22
|
מנהל מולטימדיה
|
|
חבר מתאריך: 07.12.07
הודעות: 1,955
|
|
איפה בדיוק הקישור בין טבלת המשחקים לטבלת הקטגוריות?
הכיוון שלך היה נכון, אבל לא השלמת אותו.
בטבלה האמצעית ברשימת הטבלאות שכתבת צריכות להיות שתי עמודות: category_id, game_id
אין מפתח ראשי בטבלה הזו כדי לאפשר מספר קטגוריות למשחק אחד.
ואז לדוגמא, יש לך רשומה בטבלה games:
ויש לך 2 רשומות בטבלה categories:
ואתה רוצה שהמשחק יהיה שייך לשתי הקטגוריות, אז בטבלה categories_ref יהיו הרשומות:
כלומר, פעמיים מופיע לנו מזהה המשחק שהוא 1, אבל פעם אחת עם מזהה קטגוריה 1 ופעם שניה עם מזהה קטגוריה 2. מה שאומר שהמשחק שייך לשתי הקטגוריות הללו.
עכשיו, כדי לשלוף משחק והקטגוריות שלו:
קוד:
SELECT name, category_name FROM games g, categories c, categories_ref f WHERE f.game_id = g.id AND f.category_id = c.category_id
שים לב, משחק שלא שייך לאף קטגוריה לא יוצג!
_____________________________________
נערך לאחרונה ע"י inspired-session בתאריך 24-10-2012 בשעה 12:25.
|