Merci a vous pour vos reponses mais pour vous faciliter la tache je vous posre ce que j'avais déja fait
en realité à partir de la question b tout se complique pour moi
1- Donnons les scripts SQL de création des relations EMPRUNT et AGENCE
CREATE TABLE EMPRUNT
(NumEmpr number (4) NOT NULL PRIMARY KEY,NumAg varchar(4) NOT NULL FOREIGN KEY,NumCli varchar(5) NOT NULL FOREIGN KEY,Montant number(12));
CREATE TABLE AGENCE
(NumAg varchar(4) PRIMARY KEY,NomAg varchar(6),VilleAg char(8),Actif number(12));
2- Ecrire correctement les requêtes suivantes en langage SQL :
a. Liste des Agences ayant des Comptes-Clients.
SELECT NumAg,NomAg,NumCpte
FROM AGENCE,COMPTE
WHERE AGENCE.NumAg=COMPTE.NumAg
ORDER BY NomCli;
b. Liste des Clients ayant un Compte à l’Agence ‘ADJAME’.
SELECT NumCli,NomCli,VilleAg,COMPTE.NumCpte,COMPTE.NumAg,
COMPTE.NumCli, AGENCE.NumAg
FROM COMPTE,CLIENT,AGENCE
WHERE CLIENT.NumCli=COMPTE.NumCli
AND COMPTE.NumAg=AGENCE.NumAg
AND VilleAg=’ADJAME’;
c. Liste des Clients ayant un Compte et le nom de leur ville où ils habitent.
SELECT NumCli,NomCli,VilleCli,COMPTE.NumCpte,COMPTE.NumCli
FROM CLIENT,COMPTE
WHERE CLIENT. NumCli =COMPTE.NumCli
ORDER BY NomCli;
SELECT cl.NumCli, cl.NomCli, cl.VilleCli,c.COMPTE.NumCpte, COMPTE.NumCli
FROM CLIENT cl,COMPTE c
WHERE cl. NumCli =c.NumCli
ORDER BY NomCli;
d. Liste des Clients ayant un Compte ou un Emprunt à ‘MARCORY’.
SELECT NumCli,NomCli,VilleCli,NumCpte,COMPTE.NumCli,NumEmpr,
Emprunt.NumCli,AGENCE.NumAg,VilleAg
FROM CLIENT,COMPTE,EMPRUNT,AGENCE
WHERE CLIENT. NumCli=COMPTE.NumCli
AND COMPTE.NumCli=EMPRUNT.NumCli
AND EMPRUNT.NumCli=CLIENT.NumCli
AND AGENCE.NumAg=EMPRUNT.NumAg
AND COMPTE.NumAg=AGENCE.NumAg
AND AGENCE.VilleAg =’MARCORY’;
e. Liste des Clients ayant un Compte et pas d’Emprunt à ‘MARCORY’.
SELECT NumCli,NomCli,VilleCli,NumCpte,COMPTE.NumCli,NumEmpr, Emprunt.NumCli, AGENCE.NumAg,VilleAg
FROM CLIENT,COMPTE,EMPRUNT,AGENCE
WHERE CLIENT. NumCli=COMPTE.NumCli
AND COMPTE.NumCli=EMPRUNT.NumCli
AND EMPRUNT.NumCli=CLIENT.NumCli
AND AGENCE.NumAg=EMPRUNT.NumAg
AND COMPTE.NumAg=AGENCE.NumAg
AND AGENCE.VilleAg =’MARCORY’
AGENCE.NumAg<>EMPRUNT.NumAg;
f. Liste des Clients ayant un Compte dans au moins une Agence du ‘PLATEAU’.
SELECT NumCli,NomCli,VilleAg,COMPTE.NumCpte
FROM CLIENT,COMPTE,AGENCE
WHERE CLIENT. NumCli =COMPTE.NumCli
AND AGENCE.NumAg=COMPTE.NumAg
AND AGENCE.VilleAg=’PLATEAU’
ORDER BY NomCli;
g. Liste des Agences ayant un actif plus élevé que toute Agence du ‘PLATEAU’.
SELECT NumCli,NomCli,VilleAg,NumCpte,AGENCE.NumAg
FROM CLIENT,COMPTE,AGENCE
WHERE CLIENT. NumCli =COMPTE.NumCli
AND AGENCE.NumAg=COMPTE.NumAg
AND VilleAg=’PLATEAU’;
h. Liste des Clients ayant effectué un Emprunt le 02/07/2008 à l’Agence Zone 4.
ALTER TABLE EMRUNT ADD champ5 Date ;
SELECT NumCli,NomCli,VilleCli,EMPRUNT.NumAg,Date
FROM CLIENT,EMPRUNT
WHERE CLIENT.NumCli=EMPRUNT.NumCli
AND Date=’02/07/2008’
AND NumAg=’Zone 4’;
i. Solde moyen des Comptes-Clients des Agences dont le solde moyen est ≥ 200 000.
SELECT NumCpte,NumAg, NumCli,Solde
FROM COMPTE
WHERE SOLDE>=200000