Bonjour,
Voici le schema d'une partie de ma BD. Je vais essayer d'etre consis dans mon interrogation.
Question:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 CREATE TABLE Jeu{ idJeu NUMBER NOT NULL, CONSTRAINT PK_J PRIMARY KEY (idJeu) }; CREATE TABLE Client{ idClient NUMBER NOT NULL, idJeu_1 NUMBER NOT NULL, idJeu_2 NUMBER, CONSTRAINT PK_C PRIMARY KEY (idClient), CONSTRAINT FK_1 FOREIGN KEY (idJeu_1) REFERENCES Jeu, CONSTRAINT FK_2 FOREIGN KEY (idJeu_2) REFERENCES Jeu }; CREATE TABLE Vote{ idVote NUMBER NOT NULL, idJeu NUMBER NOT NULL, CONSTRAINT PK_V PRIMARY KEY (idVote), CONSTRAINT FK_V FOREIGN KEY (idJeu) REFERENCES Jeu };
Je veux compter le nombre de Vote par Client pour un jeu. Mais, si la cle etrangere idJeu_2 dans la table Client fait reference a un jeu il faut que la requete ignore les idJeu_1 dans la table vote pour ce client.
Donc, le defi etant de faire une requete qui va ignorer la premiere cle etrangere si la deuxieme cle etrangere n'est pas null dans la table Client.
(Je travaille sur Oracle 10...)
Merci de votre aide
Partager