Besoin d aide pour une requete SQL
Sharantyr
-
norman -
norman -
Salut! :)
Jai besoin d aide pour une pitite requete sql! :'(
Je donne deja le schema des tables:
CREATE TABLE Chercheur
(
numc NUMBER(10) CONSTRAINT cp_numc PRIMARY KEY,
nom VARCHAR2(50),
prenom VARCHAR2(50),
departement VARCHAR2(50),
equipe VARCHAR2(50)
);
CREATE TABLE mission
(
numis NUMBER(10) CONSTRAINT cp_numis PRIMARY KEY,
pays VARCHAR2(50),
datedeb DATE,
datfin DATE,
objet VARCHAR2(50),
numc NUMBER(10),
CONSTRAINT ce_numc FOREIGN KEY (numc)
REFERENCES Chercheur(numc)
);
CREATE TABLE visite
(
numis NUMBER(10),
nomorg VARCHAR2(50),
datevisite DATE,
CONSTRAINT cp_visite PRIMARY KEY (numis, nomorg),
CONSTRAINT ce_numis FOREIGN KEY (numis)
REFERENCES mission(numis),
CONSTRAINT ce_nomorg FOREIGN KEY (nomorg)
REFERENCES organisme(nomorg)
);
CREATE TABLE organisme
(
nomorg VARCHAR2(50) CONSTRAINT cp_nomorg PRIMARY KEY,
adresse VARCHAR2(50),
typorg VARCHAR2(50)
);
Et la requete que j essaie de faire est de selectionner le nom, prenomdes chercheurs ayant effectués 3 ou plus missions dans la meme organisation.
Voila mes tests, je n arrive a rien, meme si certaines on une syntaxe correcte, ca ne fait que me selectionenr les chercheurs qui sont allés dans l organisation qui a recu 3 visites de la meme personne, et ce que je cehrche c est obtenir le nom de ce cehrcheur justement! :x
SELECT C.nom, C.prenom
FROM Chercheur C, Mission M, Visite V
WHERE C.numc = M.numc
AND M.numis = V.numis
AND V.nomorg IN
(
SELECT DISTINCT V.nomorg
FROM Visite V
GROUP BY V.nomorg
HAVING COUNT(V.nomorg) > 2
);
et ceci:
SELECT C.nom, C.prenom
FROM Chercheur C, Mission M
WHERE C.numc = M.numc
AND M.numis = V.numis
AND V.nomorg IN
(
SELECT DISTINCT V.nomorg
FROM Visite V
WHERE V.nomorg IN
(
SELECT DISTINCT V.nomorg
FROM Visite v
GROUP BY V.nomorg
HAVING COUNT (V.nomorg) > 2
)
)
jai essayé tout pleins d autres choses mais j arrive a rien :/
Help plz! :)
Jai besoin d aide pour une pitite requete sql! :'(
Je donne deja le schema des tables:
CREATE TABLE Chercheur
(
numc NUMBER(10) CONSTRAINT cp_numc PRIMARY KEY,
nom VARCHAR2(50),
prenom VARCHAR2(50),
departement VARCHAR2(50),
equipe VARCHAR2(50)
);
CREATE TABLE mission
(
numis NUMBER(10) CONSTRAINT cp_numis PRIMARY KEY,
pays VARCHAR2(50),
datedeb DATE,
datfin DATE,
objet VARCHAR2(50),
numc NUMBER(10),
CONSTRAINT ce_numc FOREIGN KEY (numc)
REFERENCES Chercheur(numc)
);
CREATE TABLE visite
(
numis NUMBER(10),
nomorg VARCHAR2(50),
datevisite DATE,
CONSTRAINT cp_visite PRIMARY KEY (numis, nomorg),
CONSTRAINT ce_numis FOREIGN KEY (numis)
REFERENCES mission(numis),
CONSTRAINT ce_nomorg FOREIGN KEY (nomorg)
REFERENCES organisme(nomorg)
);
CREATE TABLE organisme
(
nomorg VARCHAR2(50) CONSTRAINT cp_nomorg PRIMARY KEY,
adresse VARCHAR2(50),
typorg VARCHAR2(50)
);
Et la requete que j essaie de faire est de selectionner le nom, prenomdes chercheurs ayant effectués 3 ou plus missions dans la meme organisation.
Voila mes tests, je n arrive a rien, meme si certaines on une syntaxe correcte, ca ne fait que me selectionenr les chercheurs qui sont allés dans l organisation qui a recu 3 visites de la meme personne, et ce que je cehrche c est obtenir le nom de ce cehrcheur justement! :x
SELECT C.nom, C.prenom
FROM Chercheur C, Mission M, Visite V
WHERE C.numc = M.numc
AND M.numis = V.numis
AND V.nomorg IN
(
SELECT DISTINCT V.nomorg
FROM Visite V
GROUP BY V.nomorg
HAVING COUNT(V.nomorg) > 2
);
et ceci:
SELECT C.nom, C.prenom
FROM Chercheur C, Mission M
WHERE C.numc = M.numc
AND M.numis = V.numis
AND V.nomorg IN
(
SELECT DISTINCT V.nomorg
FROM Visite V
WHERE V.nomorg IN
(
SELECT DISTINCT V.nomorg
FROM Visite v
GROUP BY V.nomorg
HAVING COUNT (V.nomorg) > 2
)
)
jai essayé tout pleins d autres choses mais j arrive a rien :/
Help plz! :)
A voir également:
- Besoin d aide pour une requete SQL
- Logiciel sql - Télécharger - Bases de données
- Requête sql pour afficher uniquement les fleurs dont le prix est strictement inférieur à 10 euros ✓ - Forum DS
- Jointure sql ✓ - Forum MySQL
- Sql (+) - Forum Programmation
- Quelle requête écrire pour demander au moteur de recherche de présenter de préférence les pages web traitant de tennis mais pas de tennis de table ✓ - Forum Android