L'intersection permet de ne sortir que les données communes aux 2 requêtes.
Dans l'exemple suivant, nous allons lister toutes les personnes qui sont à la fois client et mécanicien.
Schématiquement, l'intersection représente ce qui est commun entre le cercle rouge (première requête) et le cercle bleu (deuxième requête). Dans notre exemple, le cercle rouge représente les clients et le cercle bleu, les mécaniciens. Nous voulons les personnes qui sont à la fois client et mécanicien.
Ex : Pour trouver les personnes qui font partie des deux tables :
SELECT prenom, nomfamille FROM clients
SELECT prenom, nomfamille FROM mecaniciens;
Attention : comme pour le MINUS, INTERSECT n'est pas encore supporté par MySQL.
L'utilisation de la clause IN combinée à une sous-requête permet de simuler une intersection.
Ex :
SELECT prenom, nomfamille
FROM clients WHERE CONCAT(prenom, nomfamille) IN
(
SELECT CONCAT(prenom, nomfamille) FROM mecaniciens
);
▼Publicité