Outils du site

La laïcité est l'acceptation de toutes les opinions et de tous les comportements qui savent respecter l'autre. L'unicité de Dieu propose par le pharaon Akhenaton est en fait la base de la laïcité. Il n'est plus question de s'entre-déchirer au nom d'une multitude de divinités, mais de constater l'unicité de l'espèce humaine dans son devenir. [Albert Jacquard]

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:15] Roge60-database:sql [2019/11/29 11:16] (Version actuelle) – [Group by ... Having] Roge
Ligne 5: Ligne 5:
 Soit deux tables A et B : Soit deux tables A et B :
  
-^Cas^Exemple^Signification^+^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.id 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: \\ | |  +|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: \\ | | +|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:15