correction du tables pour ajout de types classConf et echelon
This commit is contained in:
parent
04d3ba951e
commit
9289a676c2
2 changed files with 35 additions and 11 deletions
22
request.sql
22
request.sql
|
@ -34,8 +34,11 @@ WHERE idScientifique = '01';
|
|||
|
||||
|
||||
-- Axel Q4
|
||||
SELECT COUNT(DISTINCT ) as nbPaysCollab FROM Publication
|
||||
WHERE classeConf = 'A';
|
||||
SELECT COUNT(DISTINCT pays) AS nbPaysCollab FROM Labo_Externe le
|
||||
RIGHT JOIN Auteur_Externe ae ON ae.idLabo = le.idLabo
|
||||
RIGHT JOIN Publie_Externe pe ON pe.idAuteurExterne = ae.idAuteurExterne
|
||||
JOIN Publication pub ON pub.idPublication = pe.idPublication
|
||||
WHERE pub.classeConf = 'A';
|
||||
|
||||
-- Nathan Q5
|
||||
SELECT idDoctorant, COUNT(idPublication) FROM Publie_Doctorant
|
||||
|
@ -50,7 +53,7 @@ SELECT nom, prenom FROM Personnel
|
|||
WHERE idPersonnel IN (
|
||||
SELECT idScientifique FROM Scientifique
|
||||
WHERE idScientifique NOT IN (
|
||||
SELECT idScientifique FROM Encadrement
|
||||
SELECT idScientifique FROM Encadrement
|
||||
)
|
||||
);
|
||||
|
||||
|
@ -100,6 +103,19 @@ NOT IN ( (SELECT idScientifique
|
|||
FROM Encadrement)
|
||||
) ;
|
||||
|
||||
|
||||
-- Axel Q12
|
||||
SELECT idEnseignant FROM Enseignant_Chercheur ec
|
||||
RIGHT JOIN Publie_Scientifique ps ON ps.idScientifique = ec.idScientifique
|
||||
RIGHT JOIN Publication pub ON pub.idPublication = ps.idScientifique
|
||||
WHERE pub.classeConf = 'A';
|
||||
--EXCEPT SELECT idEnseignant FROM Enseignant_Chercheur ec
|
||||
--RIGHT JOIN Publie_Scientifique ps ON ps.idScientifique = ec.idScientifique
|
||||
--RIGHT JOIN Publication pub ON pub.idPublication = ps.idScientifique
|
||||
--WHERE pub.classeConf = 'A'
|
||||
-- AND pub.classeConf IN 'A*' 'B';
|
||||
|
||||
|
||||
-- Yasmine QUESTION 14
|
||||
|
||||
SELECT Count(Distinct idPublication)
|
||||
|
|
24
tables.sql
24
tables.sql
|
@ -1,5 +1,5 @@
|
|||
-- Nathan
|
||||
CREATE TYPE echelon AS ENUM (
|
||||
CREATE TYPE T_CLASSECONF AS ENUM (
|
||||
'A*',
|
||||
'A',
|
||||
'B',
|
||||
|
@ -7,13 +7,23 @@ CREATE TYPE echelon AS ENUM (
|
|||
);
|
||||
|
||||
-- Nathan
|
||||
CREATE TYPE grade AS ENUM (
|
||||
CREATE TYPE T_GRADE AS ENUM (
|
||||
'cr1',
|
||||
'cr2',
|
||||
'mcf',
|
||||
'mcf hors classe'
|
||||
);
|
||||
|
||||
CREATE TYPE T_ECHELON AS ENUM (
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5,
|
||||
6,
|
||||
7
|
||||
);
|
||||
|
||||
-- Axel
|
||||
CREATE TABLE Personnel
|
||||
(
|
||||
|
@ -27,9 +37,7 @@ CREATE TABLE Personnel
|
|||
|
||||
--Axel
|
||||
CREATE TABLE Doctorant(
|
||||
idDoctorant INT NOT NULL,
|
||||
date_debut_these DATE,
|
||||
date_soutenance DATE,
|
||||
idDoctorant INécheloe DATE,
|
||||
FOREIGN KEY (idDoctorant) REFERENCES Personnel(idPersonnel) ON DELETE CASCADE,
|
||||
PRIMARY KEY(idDoctorant)
|
||||
);
|
||||
|
@ -37,7 +45,7 @@ CREATE TABLE Doctorant(
|
|||
--Yasmine
|
||||
CREATE TABLE Scientifique(
|
||||
idScientifique INT NOT NULL,
|
||||
grade VARCHAR,
|
||||
grade T_GRADE,
|
||||
FOREIGN KEY (idScientifique) REFERENCES Personnel(idPersonnel) ON DELETE CASCADE,
|
||||
PRIMARY KEY (idScientifique)
|
||||
);
|
||||
|
@ -55,7 +63,7 @@ CREATE TABLE Etablissement(
|
|||
CREATE TABLE Enseignant_Chercheur(
|
||||
idEnseignant INT NOT NULL,
|
||||
idEtablissement INT NOT NULL,
|
||||
echelon ECHELON,
|
||||
echelon T_ECHELON,
|
||||
FOREIGN KEY (idEtablissement) REFERENCES Etablissement(idEtablissement) ON DELETE CASCADE,
|
||||
FOREIGN KEY (idEnseignant) REFERENCES Personnel(idPersonnel) ON DELETE CASCADE,
|
||||
PRIMARY KEY (idEnseignant)
|
||||
|
@ -118,7 +126,7 @@ CREATE TABLE Publication(
|
|||
titre VARCHAR,
|
||||
annee DATE,
|
||||
nomConf VARCHAR,
|
||||
classeConf VARCHAR,
|
||||
classeConf T_CLASSECONF,
|
||||
nbPages INT,
|
||||
PRIMARY KEY (idPublication)
|
||||
);
|
||||
|
|
Loading…
Reference in a new issue