Outils du site

L'astronome peut vous parler de son entendement de l'espace. Il ne peut vous donner son entendement. Le musicien peut vous interpréter le rythme qui régit tout espace. Il ne peut vous donner l'ouïe qui capte le rythme, ni la voix qui lui fait écho. Celui qui est versé dans la science des nombres peut décrire les régions du poids et de la mesure. Il ne peut vous y emmener. Car la vision d'un être ne prète pas ses ailes à d'autres, De même que chacun de vous se tient seul dans la connaissance de Dieu, chacun de vous doit demeurer seul dans sa connaissance de Dieu et dans son entendement de la terre. [Khalil GIBRAN]

60-database:sql

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
60-database:sql [2019/03/09 03:20] Roge60-database:sql [2019/11/29 11:16] (Version actuelle) – [Group by ... Having] Roge
Ligne 7: Ligne 7:
 ^Cas^Exemple^ ^Cas^Exemple^
 |INNER JOIN: \\ intersection des A et B (Tous les A et les B qui sont en relation)|Select * FROM A\\ INNER JOIN B on A.bID = B.id;| |INNER JOIN: \\ intersection des A et B (Tous les A et les B qui sont en relation)|Select * FROM A\\ INNER JOIN B on A.bID = B.id;|
-|LEFT JOIN: \\ tous les A qu'il aient ou non un B correspondant|Select * FROM A \\ LEFT JOIN B on A.bID = B.id;| +|LEFT (OUTER) JOIN: \\ tous les A qu'il aient ou non un B correspondant|Select * FROM A \\ LEFT JOIN B on A.bID = B.id;| 
-|LEFT JOIN exclusif: \\ tous les A qui n'ont pas un B correspondant|Select * FROM A \\ LEFT JOIN B on A.bID = B.id \\ WHERE B.id IS NULL;| +|LEFT (OUTER) JOIN exclusif: \\ tous les A qui n'ont pas un B correspondant|Select * FROM A \\ LEFT JOIN B on A.bID = B.id \\ WHERE B.id IS NULL;| 
-|RIGHT JOIN: \\ tous les B qu'il aient ou non un A correspondant |Select * FROM A \\ RIGHT JOIN B on A.bID = B.id;| +|RIGHT (OUTER) JOIN: \\ tous les B qu'il aient ou non un A correspondant |Select * FROM A \\ RIGHT JOIN B on A.bID = B.id;| 
-|RIGHT JOIN exclusif: \\ tous les B qui n'ont pas un A correspondant|Select * FROM A \\ RIGHT JOIN B on A.bID = B.id \\ WHERE A.Bid is null;| +|RIGHT (OUTER) JOIN exclusif: \\ tous les B qui n'ont pas un A correspondant|Select * FROM A \\ RIGHT JOIN B on A.bID = B.id \\ WHERE A.Bid is null;| 
-|FULL JOIN: \\ L'ensemble des A ET des B |Select * FROM A\\ FULL JOIN B on A.bID = B.id; |  +|FULL (OUTER) JOIN: \\ L'ensemble des A ET des B |Select * FROM A\\ FULL JOIN B on A.bID = B.id; |  
-|FULL JOIN sans intersection: \\ L'ensemble des A OU (exclusif) des B |Select * FROM A\\ FULL JOIN B on A.bID = B.id \\ WHERE A.bID IS NULL \\ OR B.ID IS NULL; | +|FULL (OUTER) JOIN sans intersection: \\ L'ensemble des A OU (exclusif) des B |Select * FROM A\\ FULL JOIN B on A.bID = B.id \\ WHERE A.bID IS NULL \\ OR B.ID IS NULL; | 
  
 Illustrations : Illustrations :
  
 [[http://cartman34.fr/informatique/sgbd/differences-entre-inner-left-right-et-outer-join-en-sql.html|http://cartman34.fr/informatique/sgbd/differences-entre-inner-left-right-et-outer-join-en-sql.html]] [[http://cartman34.fr/informatique/sgbd/differences-entre-inner-left-right-et-outer-join-en-sql.html|http://cartman34.fr/informatique/sgbd/differences-entre-inner-left-right-et-outer-join-en-sql.html]]
- 
-ou 
  
 [[https://sql.sh/2401-sql-join-infographie|https://sql.sh/2401-sql-join-infographie]] [[https://sql.sh/2401-sql-join-infographie|https://sql.sh/2401-sql-join-infographie]]
  
 +===== Group by ... Having =====
 +
 +Exemple : Chaque élément de A peut être en relation avec N éléments de B
 +
 +<code bash>
 +Select A.id, count(b.id) FROM A 
 +INNER JOIN B on A.bID = B.id
 +WHERE ...
 +GROUP BY A.id
 +HAVING ... condition 
 +</code>
 +
 +===== A voir =====
 +
 +https://www.slideshare.net/MarkusWinand/modern-sql
  
Dernière modification : 2019/03/09 03:20