Implémentation des opérations SQL INTERSECT et MINUS dans Microsoft Access
L'intersection et la soustraction de tables, représentées par les opérateurs INTERSECT et MINUS dans SQL, peuvent être difficile dans Microsoft Access. Heureusement, ces opérations peuvent être réalisées en utilisant respectivement des jointures internes et externes.
INTERSECT : une jointure interne
Pour effectuer une opération INTERSECT, utilisez une jointure interne. Cette jointure renvoie uniquement les lignes pour lesquelles la condition de jointure correspond dans les deux tables participantes. La requête suivante illustre une opération INTERSECT :
select distinct a.* from a inner join b on a.id = b.id
Cette requête récupère toutes les lignes de la table a qui ont des lignes correspondantes dans la table b. Le mot clé distinct élimine les lignes en double.
MINUS : une jointure externe
MINUS, ou une jointure externe, renvoie les lignes d'une table spécifiée qui n'ont pas de lignes correspondantes dans un autre tableau. Dans Access, une jointure externe gauche peut être utilisée pour y parvenir :
select distinct a.* from a left outer join b on a.id = b.id where b.id is null
Cette requête récupère toutes les lignes de la table a qui n'ont pas de lignes correspondantes dans la table b. La jointure externe gauche récupère toutes les lignes de a, qu'elles aient ou non des correspondances dans b. La clause Where filtre les lignes avec des correspondances.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!