J'ai un souci avec des tables de liaison... Non pas pour les renseigner mais pour exploiter les données, j'imagine que c'est très classique hélas je n'ai pas trouvé de solution pour l'instant (si , si, j'ai cherché !
Soit trois tables : LIVRES, MOTS-CLES, LIAISON
Les tables :
Code : Tout sélectionner
LIVRES :
ID_LIVRE TITRE
1 Les bas de hurlevent
2 Tentacule
3 Le cri des agneaux
4 Le sarment des limbes
5 Le jeudi noir à la bourse
6 MySql si facile !
7 Mais acces est tellement mieux ! ! !
8 MySql en 10 leçons
9 Acces en 184 leçons
MOT-CLES :
ID_MOTCLE MOTCLE
1 présence
2 bas-côtés
3 mélanome
4 méchoui
5 vigne
6 krach
7 requêtes
8 merise
9 clé
10 pythagore
11 cardinalité
12 turquie
13 banque
14 zouave
LIAISON :
IDLIVRE IDMOTCLE
1 1
1 2
1 5
2 1
2 3
2 4
2 5
3 2
3 5
3 9
3 12
3 14
5 6
5 13
6 7
7 6
7 7
8 11
9 6
9 14
Comment je fais pour choisir les livres dont les mots-clés sont "krach" (6) OU "zouave" (14) ?
J'ai essayé :
Code : Tout sélectionner
Select idlivre, idmotcle from liaison
group by idmotcle having ((idmotcle = 6) or (idmotcle = 14))
Code : Tout sélectionner
3 5 7 9Code : Tout sélectionner
3 5 Autre question :
Et si je veux les livres qui ont comme mots-clés "présence" (1) ET "vigne" (5) ?
J'ai essayé :
Code : Tout sélectionner
Select idlivre, idmotcle from liaison
group by idmotcle having (idmotcle = 1) and (idmotcle = 5)
Code : Tout sélectionner
1 2( pour ce second point je m'y attendais un peu car le champ idmotcle d'un enregistrement ne peut contenir à la fois les valeurs 1 et 5... Mais j'ignore comment écrire la requête pour qu'elle retourne plusieurs enregistrements)
Je dois être très loin du compte...
Si vous pouviez me donner des pistes...
(au cas où, je travaille pour l'instant avec Easyphp et phpMyAdmin 2.5.3)
Merci d'avance