par
charabia » 31 oct. 2008, 22:08
C'est à partir de l'exemple 3 que tu commences vraiment les jointures.
Voici les exemples que tu dois étudier :
SELECT CLI_NOM, TEL_NUMERO
FROM T_CLIENT, T_TELEPHONE
WHERE T_CLIENT.CLI_ID = T_TELEPHONE.CLI_ID
Traduction : SELECTION de CLI_NOM et TEL_NUMERO des tables T_CLIENT et T_TELEPHONE OU CLI_ID de T_CLIENT est égal à CLI_ID de T_TELEPHONE.
Tu comprends mieux ?
Puis la requête
SELECT CLI_NOM, TEL_NUMERO
FROM T_CLIENT C, T_TELEPHONE T
WHERE C.CLI_ID = T.CLI_ID
qui est identique sauf qu'on utilise la technique du "surnommage" : attribution d'un surnom à chacune des tables présente dans la partie FROM du SELECT, ici C et T.
La table T_CLIENT
create table T_CLIENT
(
CLI_ID INTEGER not null,
TIT_CODE CHAR(8) ,
CLI_NOM CHAR(32) not null,
CLI_PRENOM VARCHAR(25) ,
CLI_ENSEIGNE VARCHAR(100) ,
primary key (CLI_ID)
);
et la table T_TELEPHONE
create table T_TELEPHONE
(
TEL_ID INTEGER not null,
CLI_ID INTEGER not null,
TYP_CODE CHAR(8) not null,
TEL_NUMERO CHAR(20) not null,
TEL_LOCALISATION VARCHAR(64) ,
primary key (TEL_ID)
);
C'est à partir de l'exemple 3 que tu commences vraiment les jointures.
Voici les exemples que tu dois étudier :
[php]SELECT CLI_NOM, TEL_NUMERO
FROM T_CLIENT, T_TELEPHONE
WHERE T_CLIENT.CLI_ID = T_TELEPHONE.CLI_ID
[/php]
Traduction : SELECTION de CLI_NOM et TEL_NUMERO des tables T_CLIENT et T_TELEPHONE OU CLI_ID de T_CLIENT est égal à CLI_ID de T_TELEPHONE.
Tu comprends mieux ?
Puis la requête
[php]SELECT CLI_NOM, TEL_NUMERO
FROM T_CLIENT C, T_TELEPHONE T
WHERE C.CLI_ID = T.CLI_ID[/php]
qui est identique sauf qu'on utilise la technique du "surnommage" : attribution d'un surnom à chacune des tables présente dans la partie FROM du SELECT, ici C et T.
La table T_CLIENT
[php]create table T_CLIENT
(
CLI_ID INTEGER not null,
TIT_CODE CHAR(8) ,
CLI_NOM CHAR(32) not null,
CLI_PRENOM VARCHAR(25) ,
CLI_ENSEIGNE VARCHAR(100) ,
primary key (CLI_ID)
);[/php]
et la table T_TELEPHONE
[php]create table T_TELEPHONE
(
TEL_ID INTEGER not null,
CLI_ID INTEGER not null,
TYP_CODE CHAR(8) not null,
TEL_NUMERO CHAR(20) not null,
TEL_LOCALISATION VARCHAR(64) ,
primary key (TEL_ID)
);[/php]