"Tonni Aagesen" <use.my@signature.com> writes:
> Hejsa NG,
> 
> Jeg har læst lidt om relationer på:
> 
http://www.phpbuilder.com/columns/barry20000731.php3?page=1
> 
> Ud fra denne artikel har lavet følgende tabeller:
> 
> CREATE TABLE genreProfil(
> ID INT NOT NULL,
> G_ID INT,
> P_ID INT,
> FOREIGN KEY (G_ID) REFERENCES genre (ID),
> FOREIGN KEY (P_ID) REFERENCES profil (ID),
> PRIMARY KEY (ID));
> 
> CREATE TABLE genre(
> ID INT NOT NULL,
> name VARCHAR(255),
> G_ID INT,
> FOREIGN KEY (G_ID) REFERENCES genreProfil (ID),
> PRIMARY KEY (ID));
> 
> CREATE TABLE profil(
> ID INT NOT NULL,
> username VARCHAR(255),
> P_ID INT,
> FOREIGN KEY (P_ID) REFERENCES genreProfil (ID),
> PRIMARY KEY (ID));
> 
> Lad os sige at de har følegende data:
> 
> genreProfil
> --------------------------------
> |    ID    |    G_ID    |    P_ID    |
> --------------------------------
> |    1      |        1       |        1      |
> --------------------------------
> |    2      |        3       |        1      |
> --------------------------------
> |    3      |        2       |        2      |
> --------------------------------
> |    4      |        3       |        2      |
> --------------------------------
> 
> genre
> --------------------------
> |    ID    |    name            |
> --------------------------
> |    1      |    Pop              |
> --------------------------
> |    2      |    Blues            |
> --------------------------
> |    3      |    Jazz              |
> --------------------------
> 
> profil
> --------------------------
> |    ID    |    username      |
> --------------------------
> |    1      |    Per               |
> --------------------------
> |    2      |    Lars              |
> --------------------------
> 
> Altså: Per hører Pop og Jazz, mens Lars hører Blues og Jazz.
> 
> Men jeg har to problemer:
> 
> 1) hvad kan jeg bruge disse FOREIGN KEY til?
Kun til dokumentation i MySQL afaik
> 2) Jeg kan ikke greje at lave SQLsætning, der kan [1] vælge alle genre [2]
> finde ud af om eks. Lars har valgt denne genre. Hvis vi tager Lars som eks.
> skal mit output være noget i retningen af:
[1] select name from genre;
[2] select name  from genre r, profil p,genreprofil pf 
           where p.username='lars' and p.P_ID=pf.ID and pf.G_ID=r.ID;
  - dette finder dog kun de genrer som lars er tilmeldt - ikke dem som han 
    ikke er tilmeldt. Det bliver du nødt til at kombinere dig frem til.
-- 
Mvh. Kim Petersen  /| Tlf:   +4575831551          |\ Jomfru Ingefreds Vej 18
Software Engineer / | Fax:   (none atm.)          | \             7100 Vejle
LSS              /  | Email:  kim@vindinggaard.dk |  \          DK - Danmark