PaliSkill
SQL Intermédiaire

Leçon 2 / 9 — Chapitre 2: Jointures avancées et combinées

CROSS JOIN : le produit cartésien

CROSS JOIN associe chaque ligne d'une table avec chaque ligne d'une autre, sans aucune condition ON — un produit cartésien. Le nombre de lignes obtenu est toujours le nombre de lignes de la première table multiplié par celui de la seconde.

Voici une table entrepots :

entrepots
id | nom
1  | Nord
2  | Sud
SELECT p.nom, e.nom AS entrepot
FROM produits p
CROSS JOIN entrepots e;

Cette requête génère une ligne pour chaque combinaison possible d'un produit et d'un entrepôt — utile, par exemple, pour préparer une ligne d'inventaire par produit et par entrepôt, même avant qu'aucun stock n'y soit réellement affecté. produits a 6 lignes, entrepots en a 2 : le résultat en compte 6 × 2 = 12.

Contrairement aux autres jointures, CROSS JOIN ne prend jamais de clause ON — il n'y a rien à faire correspondre, puisque toutes les combinaisons sont gardées.

À retenir :

  • CROSS JOIN associe chaque ligne d'une table à chaque ligne d'une autre, sans condition.
  • Le nombre de lignes du résultat vaut toujours (nombre de lignes table 1) × (nombre de lignes table 2).
  • CROSS JOIN ne s'écrit jamais avec ON — c'est ce qui le distingue visuellement des autres jointures.

À vous de jouer : si entrepots comptait 3 lignes au lieu de 2, combien de lignes retournerait produits CROSS JOIN entrepots ?

🔒

Continuez ce module

Débloquez les leçons restantes ainsi que la certification finale.

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 80 leçons restantes de ce module

Votre paiement est vérifié avant l'activation de l'accès