Imaginons que ce calcul savant représente en fait le nombre de chiots de Cartouche, qui a eu une première portée de 5 chiots, et
une seconde de seulement 3 chiots. Nous voudrions donc indiquer qu'il s'agit bien de ça, et non pas d'un calcul inutile destiné
simplement à illustrer une notion obscure.
Facile ! Il suffit d'utiliser les alias :
Code : SQL
SELECT 5+3 AS Chiots_Cartouche;
-- OU, sans utiliser AS
SELECT 5+3 Chiots_Cartouche;
Chiots_Cartouche
8
Bon, tout ça c'est bien joli, mais pour l'instant ça n'a pas l'air très utile…
Prenons un exemple plus parlant : retournez voir le schéma qui explique le principe des jointures un peu plus haut. La table
virtuelle résultant de la jointure des tables Espece et Animal possède plusieurs colonnes :
id
sexe
nom
race_id
espece_id
id
nom_courant
nom_latin
Mais que vois-je ? J'ai deux colonnes id ! Comment faire pour les différencier ? Comment être sûr de savoir à quoi elles se
rapportent ?
Avec les alias pardi ! Il suffit de donner l'alias espece_id à la colonne id de la table Espece, et animal_id à la colonne id de la
table Animal.
Tout à coup, ça vous semble plus intéressant non ?
Je vais vous laisser sur ce sentiment. Il n'y a pas grand-chose de plus à dire sur les alias, vous en comprendrez toute l'utilité à
travers les nombreux exemples dans la suite de ce cours. L'important pour l'instant est que vous sachiez que ça existe et comment
les définir.
Jointure interne
L'air de rien, dans l'introduction, je vous ai déjà montré comment faire une jointure. La première émotion passée, vous devriez
vous être dit "Tiens, mais ça n'a pas l'air bien compliqué en fait, les jointures".
En effet, une fois que vous aurez compris comment réfléchir aux jointures, tout se fera tout seul. Personnellement, ça m'aide
vraiment d'imaginer la table virtuelle créée par la jointure, et de travailler sur cette table pour tout ce qui est conditions, tris, etc.
Revoici la jointure que je vous ai fait faire, et qui est en fait une jointure interne.
Code : SQL
SELECT Espece.description
FROM Espece
INNER JOIN Animal
ON Espece.id = Animal.espece_id
WHERE Animal.nom = 'Cartouche';
Décomposons !
SELECT Espece.description : je sélectionne la colonne description de la table Espece.
Partie 2 : Index, jointures et sous-requêtes
100/414
www.openclassrooms.com
une seconde de seulement 3 chiots. Nous voudrions donc indiquer qu'il s'agit bien de ça, et non pas d'un calcul inutile destiné
simplement à illustrer une notion obscure.
Facile ! Il suffit d'utiliser les alias :
Code : SQL
SELECT 5+3 AS Chiots_Cartouche;
-- OU, sans utiliser AS
SELECT 5+3 Chiots_Cartouche;
Chiots_Cartouche
8
Bon, tout ça c'est bien joli, mais pour l'instant ça n'a pas l'air très utile…
Prenons un exemple plus parlant : retournez voir le schéma qui explique le principe des jointures un peu plus haut. La table
virtuelle résultant de la jointure des tables Espece et Animal possède plusieurs colonnes :
id
sexe
nom
race_id
espece_id
id
nom_courant
nom_latin
Mais que vois-je ? J'ai deux colonnes id ! Comment faire pour les différencier ? Comment être sûr de savoir à quoi elles se
rapportent ?
Avec les alias pardi ! Il suffit de donner l'alias espece_id à la colonne id de la table Espece, et animal_id à la colonne id de la
table Animal.
Tout à coup, ça vous semble plus intéressant non ?
Je vais vous laisser sur ce sentiment. Il n'y a pas grand-chose de plus à dire sur les alias, vous en comprendrez toute l'utilité à
travers les nombreux exemples dans la suite de ce cours. L'important pour l'instant est que vous sachiez que ça existe et comment
les définir.
Jointure interne
L'air de rien, dans l'introduction, je vous ai déjà montré comment faire une jointure. La première émotion passée, vous devriez
vous être dit "Tiens, mais ça n'a pas l'air bien compliqué en fait, les jointures".
En effet, une fois que vous aurez compris comment réfléchir aux jointures, tout se fera tout seul. Personnellement, ça m'aide
vraiment d'imaginer la table virtuelle créée par la jointure, et de travailler sur cette table pour tout ce qui est conditions, tris, etc.
Revoici la jointure que je vous ai fait faire, et qui est en fait une jointure interne.
Code : SQL
SELECT Espece.description
FROM Espece
INNER JOIN Animal
ON Espece.id = Animal.espece_id
WHERE Animal.nom = 'Cartouche';
Décomposons !
SELECT Espece.description : je sélectionne la colonne description de la table Espece.
Partie 2 : Index, jointures et sous-requêtes
100/414
www.openclassrooms.com
